Tibero4 기본강좌
데이터베이스의 역할 전환 0 0 99,999+

by 티베로 Tibero Standby Cluster [2010.02.03]


Tibero Database에서는 Standby Cluster 운영 시 계획된 상황에서 역할을 바꾸는 Switchover와 계획되지 않은 상황에서 그 역할을 바꾸는 Failover를 지원한다. 이때, 역할 변환은 자동 실행이 아니라 DBA가 action을 취해야 한다.

Switchover

Primary DB에서 Switchover 명령어 실행

Primary DB를 정상적으로 종료하고, Standby DB 중 하나를 Primary DB로 전환하고 싶은 경우 Primary DB에서 아래의 명령을 수행하면 모든 Standby DB들을 Primary DB와 동기화시키고서 Primary DB가 내려가게 된다.

$ tbdown -t SWITCHOVER

NORMAL 모드로 기동 또는 ALTER DATABASE open 문장의 실행

[ 예 1 ]처럼 Standby DB 중 하나를 종료하고서, NORMAL 모드로 기동하거나 [ 예 2 ]처럼 DDL 문장을 수행하면 그 DB가 새로운 Primary DB가 된다. 단, read only 모드인 상태에서 open 모드로 바로 전환하는 것은 지원하지 않는다.

  • [예 1] Standby DB - NORMAL 모드로 기동
  •  $ tbdown 
     $ tbboot normal
    

  • [예 2] Standby DB - ALTER DATABASE DDL 실행
  •  SQL> ALTER DATABASE open;
    

이전의 Primary DB를 새로운 Standby DB로 사용하고 싶다면, 새로 Primary DB가 될 DB의 $TB_SID.tip 파일에 Standby DB(LOG_REPLICATION_MODE, LOG_REPLICATION_DEST_n 초기화 파라미터)를 설정하고, 이전 Primary DB를 RECOVERY 모드로 기동하고서 새로운 Primary DB를 NORMAL 모드로 기동하면 서로 역할을 전환하여 수행할 수 있다.

이때, 두 DB는 이미 동기화된 상태이므로 Standby DB를 구성할 때 필요한 새로운 Primary의 DB 파일을 복사하고, ALTER DATABASE Standby controlfile을 수행하는 과정은 더는 필요하지 않다.

또한, 새로운 Standby DB의 $TB_SID.tip 파일에 기존의 Standby DB와 관련된 설정이 남아 있더라도 DB가 NORMAL 모드로 운용될 때만 적용된다.

Failover

현재 Primary DB가 갑자기 비정상적으로 종료되었거나 접근할 수 없어진 Standby DB 중 하나를 Primary DB로 사용할 수 있다.

Standby DB를 Primary DB로 사용하기 위해서는 종료 후 다시 NORMAL 모드로 기동을 하거나 ALTER DATABASE open 문을 수행해야 한다.

단, 기존에 사용하던 Primary DB는 새로운 Primary DB가 운영되고는 더는 어떤 용도(Primary DB나 Standby DB)로도 Tibero Standby Cluster에 포함될 수 없다.

- 강좌 URL : http://www.gurubee.net/lecture/2103

- 구루비 강좌는 개인의 학습용으로만 사용 할 수 있으며, 다른 웹 페이지에 게재할 경우에는 출처를 꼭 밝혀 주시면 고맙겠습니다.~^^

- 구루비 강좌는 서비스 제공을 위한 목적이나, 학원 홍보, 수익을 얻기 위한 용도로 사용 할 수 없습니다.

댓글등록
SQL문을 포맷에 맞게(깔끔하게) 등록하려면 code() 버튼을 클릭하여 작성 하시면 됩니다.
로그인 사용자만 댓글을 작성 할 수 있습니다. 로그인, 회원가입