Standby DB 설정은 Primary DB가 정상종료 상태에서 진행한다.
Primary DB의 $HOME/tbdata 디렉토리 내의 DB파일 즉, 컨트롤 파일, 온라인 로그파일, 패스워드 파일을 포함해서 모든 데이터 파일들을 복사하고 나서, Standby DB의 $HOME/tbdata 디렉토리 위치로 Primary DB에서 백업 받은 파일을 모두 이동시킨다.
Standby DB의 $HOME/tibero4/config/$TB_SID.tip파일을 열어 DB_NAME을 Primary DB와 일치시키고, Primary DB의 백업파일들의 파일 경로가 달라진 경우 파일 경로 변환을 위한 파라미터를 추가한다.
다음은 Standby DB의 $TB_SID.tip 파일을 수정하는 방법이다.
DB_NAME = db_name STANDBY_FILE_NAME_CONVERT = Primary DB의 절대경로, Standby DB의 절대경로
Standby DB를 mount 모드로 기동하여 tbsql에 sys계정으로 접속한고 나서, 아래 명령어를 통해 변환된 파일 경로 적용 작업을 진행한다. 정상적으로 수행되면 tbdown명령어로 DB를 종료한다.
다음은 수정된 Standby DB의 경로를 적용하는 방법이다.
SQL> ALTER DATABASE Standby controlfile;
주의할 점은 NORMAL 모드로 Standby DB를 한 번이라도 기동하게 되면 이제는 Standby DB로서의 기능은 할 수 없고, 앞서 설명한 과정을 다시 반복하여 Standby DB를 설정해야 한다.
다음은 Standby DB를 RECOVERY 모드로 기동시키는 방법이다.
$ tbboot -t RECOVERY
Primary DB는 NORMAL 모드로 기동하던 .tip 파일에 설정된 Standby DB들과 연결이 이루어지고, 백그라운드 프로세스에 의해 자동으로 replication이 이루어진다.
다음은 Primary DB를 NORMAL 모드로 기동시키는 방법이다.
$ tbboot
만약 PROTECTION이나 AVAILABILITY 모드인 경우 LGWR SYNC인 Standby DB가 모두 연결 불가능한 상태라면 Primary DB도 운영이 불가능하므로 반드시 Standby DB를 먼저 부트해야만 한다. 그 외는 Standby DB를 나중에 부트하더라도 자동으로 연결되어 운용할 수 있다.
Standby DB의 READ ONLY 모드
Standby DB를 RECOVERY 모드로 기동시킨 상태에서는 DB에 대한 사용자의 접근이 제한되어 DB 데이터에 대한 작업을 전혀 수행할 수 없다. 하지만, 읽기 작업(select)에 한해 read only 모드를 지원하고 있어 모드 변경 후 읽기 작업이 가능하다.
다음은 Standby DB를 read only 모드로 설정하는 방법이다.
SQL> ALTER DATABASE open read only;
read only 모드로 동작 중일 때에는 내부적으로 Primary DB로부터 받은 Redo 로그를 복구하는 과정이 중지되므로 Primary DB로부터 로그를 더는 받지 못하는 상태가 될 수 있다.
만약 Standby DB에서 Redo 로그를 반영하는 과정을 중단하지 않고서도 읽기 작업을 원하는 경우, 아래의 DDL을 사용하면 Standby DB는 복구과정을 멈추지 않고 read only 세션들을 허용해 준다.
다음은 Standby DB를 read only continue recovery로 설정하는 방법이다.
SQL> ALTER DATABASE open read only continue recovery;
다시 RECOVERY 모드로 전환하는 작업은 아래와 같이 수행한다. 이때, 반드시 read only 모드에서 접근한 세션들은 모두 해제된 상태여야 한다.
다음은 Standby DB를 RECOVERY 모드로 전환하는 방법이다.
SQL> ALTER DATABASE standby;
- 강좌 URL : http://www.gurubee.net/lecture/2101
- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^
- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.