운영관리

CUBRID HA 구성 후 구동중인 slave/replica node에서 write 하기

by 정만영 posted Jul 15, 2015

CUBRID HA는 slave/replica node에서 write 작업을 수행할 수 없는데, csql 인터프리터 --write-on-standby 옵션을 사용하면 write 작업이 가능하다, 그러나 master가 아닌 node에서 직접 데이터를 쓰는 경우 복제 불일치가 될 수 있으므로 사용에 주의해야 한다.


1,  --write-on-standby 옵션 설명

이 옵션은 시스템 관리자 모드 옵션(--sysadm--)과 함께 사용해야 한다. 이 옵션으로 CSQL을 실행한 dba는 standby 상태의 DB 즉, 슬레이브 DB 또는 레플리카 DB에 직접 접속하여 쓰기 작업을 수행할 수 있다.


2,  --write-on-standby 사용하지 않을 경우 write 작업 시 오류내용

cubrid$>csql -u dba demodb@slave_db

csql> select * from repl_test;

=== <Result of SELECT Command in Line 1> ===

            a  b
===================================
            1  'test'

csql> insert into repl_test values(2,'test2');

In the command from line 1,

ERROR: Attempted to update the database when updates are disabled.

3,  --write-on-standby 사용할 경우 write 수행내용

cubrid$>csql --sysadm --write-on-standby -u dba demodb@slave_db

csql> insert into repl_test values(2,'test2');

Execute OK. (0.002824 sec) Committed.

1 command(s) successfully processed


참조: --write-on-standby 옵션 테스트는  CUBRID 9.2.20.0003 버전에서 수행한 것으로 CUBRID R4.x 버전은 사용할 수 없다,


Articles

1 2 3 4