database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
PostgreSQL
Firebird
Oracle
ㆍInformix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
Informix Q&A 368 게시물 읽기
No. 368
mirror chunk 로 부터 primary chunk 를 복구하는 법
작성자
그리움
작성일
2000-11-03 22:27
조회수
5,286

mirror chunk로부터 primary chunk를 복구하는 방법

 

Q4 디스크 장애로 인하여 특정 dbspace의 chunk가 down 되었습니다. 다행히 이 dbspace에는 mirroring이 되어 있어서 system 사용에는 문제가 없습니다. 장애가 생긴 디스크를 다시 교체한 후에 mirror chunk로부터 primary chunk를 복구하려 합니다.

 

A  

디스크 미러링은 디스크 장애에 대비하여 같은 구조의 chunk를 "mirror chunk"라는 이름으로 하나 더 가지고 있도록 구성하는 것이며, 디스크 미러링을 한 경우라면 디스크 장애 발생시 시스템은 정상적으로 가동됩니다. 즉, Primary chunk에 장애가 생기면 mirror chunk가 primary chunk를 대신하여 서비스를 하게 됩니다. 이런 구조로 구성되어 있는 시스템에서는 primary chunk에 장애가 생겼을 때에는 mirror chunk로서 복구할 수 있으며, 반대의 경우도 가능합니다.

 

 

 

kor-k400:/bigfs> onstat -d

INFORMIX-OnLine Version 7.24.UC1 -- On-Line -- Up 01:03:10 -- 9096 Kbytes

Dbspaces

address number flags fchunk nchunks flags owner name

ce84e108 1 2 1 1 M informix rootdbs

1 active, 2047 maximum

Chunks

address chk/dbs offset size free bpages flags pathname

ce84e178 1 1 0 5000 2221   PO- /bigfs/chunk

ce84e250 1 1 0 5000 0   MO- /post01/byrhee/mchunk

1 active, 2047 maximum

 

위에서 볼 수 있는 것처럼 rootdbs에 미러링이 되어 있습니다. 어떤 장애로 인해서 rootdbs의 primary chunk인 /bigfs/chunk를 액세스할 수 없다면 다음과 같이 보여질 것입니다.

 

kor-k400:/bigfs> onstat -d

INFORMIX-OnLine Version 7.24.UC1 -- On-Line -- Up 00:00:13 -- 9096 Kbytes

Dbspaces

address number flags fchunk nchunks flags owner name

ce84e108 1 2 1 1 M informix rootdbs

1 active, 2047 maximum

Chunks

address chk/dbs offset size free bpages flags pathname

ce84e178 1 1 0 5000 2221   PD- /bigfs/chunk

ce84e250 1 1 0 5000 0   MO- /post01/byrhee/mchunk

1 active, 2047 maximum

 

primary chunk의 상태가 "PD"임을 알 수 있고, 이는 "Primary Down"을 의미합니다.

 

이 경우, 위에서도 말한 바와 같이 mirror chunk를 가지고 복구할 수 있습니다. 우선 장애가 발생한 chunk (여기서는 /bigfs/chunk)를 사용 가능하도록 한 후에 onspaces 명령을 사용하여 복구할 수 있습니다.

 

kor-k400:/bigfs> onspaces -s rootdbs -p /bigfs/chunk -o 0 -O

 

WARNING: bringing a down chunk into recovery state.

 

Do you really want to continue? (y/n)y

 

Verifying physical disk space, please wait ...

 

Chunk status successfully changed.

 

 

onspaces명령에서 -s 옵션을 주어 rootdbs의 chunk 중 /bigfs/chunk의 상태(status)를 OnLine (-O 옵션)으로 변경하라는 내용입니다. 이렇게 작업을 명령한 후 success 명령을 받으면 다시 onstat -d로 확인해 볼 수 있습니다.

 

kor-k400:/bigfs> onstat -d

INFORMIX-OnLine Version 7.24.UC1 -- On-Line -- Up 00:37:49 -- 9096 Kbytes

Dbspaces

address number flags fchunk nchunks flags owner name

ce84e108 1 2 1 1 M informix rootdbs

1 active, 2047 maximum

Chunks

address chk/dbs offset size free bpages flags pathname

ce84e178 1 1 0 5000 2221   PO- /bigfs/chunk

ce84e250 1 1 0 5000 0   MO- /post01/byrhee/mchunk

1 active, 2047 maximum

 

따라서 미러링을 한 dbspace라면 디스크 장애가 생겼을 때에도 mirror chunk까지 모두 장애가 발생하지 않는 한 서비스가 중단되지 않으며, 장애가 발생한 디스크를 복구할 수 있습니다. 여기서 주의해야 할 점은 한 쪽 디스크에 발생했을 때 mirror chunk까지 모두 장애가 발생하지 않도록 primary chunk로 사용하는 디스크와 mirror chunk로 사용하는 디스크를 서로 분리시켜 놓아야 한다는 점입니다. 물리적으로 같은 디스크에 primary와 mirror chunk를 같이 둔다면 한 쪽 디스크 장애만으로도 두 chunk를 동시에 액세스 못할 수 있으므로, 이런 경우라면 미러링의 효과를 전혀 볼 수 없을 것입니다.

 

이렇게 장애가 난 디스크를 복구하는 방법은 onspaces 명령 외에 onmonitor의 Dbspaces 메뉴의 Status 옵션을 선택하여서도 가능합니다.

[Top]
No.
제목
작성자
작성일
조회
372sco(DB)..linux(web)..연결!! 무지하게..어렵넹..
궁금이..
2000-11-07
4657
374┕>Re: sco(DB)..linux(web)..연결!! 무지하게..어렵넹..
Mr.채
2000-11-08 12:27:08
4976
371mr.채 님 감사했구요 한번만 더 저기요 파일 데이터 자료를 어케 informix db에 넣죠....
pallas
2000-11-07
4540
369win98 에서 ClientSDK문제입니다...핼프... ㅠ ㅠ
pallas
2000-11-07
4572
370┕>Re: win98 에서 ClientSDK문제입니다...핼프... ㅠ ㅠ
Mr.채
2000-11-07 11:22:33
5049
368mirror chunk 로 부터 primary chunk 를 복구하는 법
그리움
2000-11-03
5286
367Raw Device를 dbspace의 chunk로 사용할 때의 장점과 주의 사항
그리움
2000-11-03
5396
366DB space 와 chunk 를 추가하는 법 [1]
그리움
2000-11-03
8046
364JDBC 드라이브 이용에 관한 질문
그리움
2000-11-03
5233
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.017초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다