cubrid changemode

설명

CUBRID HA의 서버 상태를 확인하고 변경한다.

구문

cubrid changemode [option] <database-name>

옵션

옵션

기본값

설명

-m

none

서버 상태를 변경한다. 옵션 값으로 standby, maintenance, active 중 하나를 입력할 수 있다.

-f

 

서버의 상태를 강제로 변경할지 여부를 설정한다. 현재 서버가 to-be-active 상태일 때 active 상태로 강제 변경하려고 하는 경우에는 반드시 사용하며, 이를 설정하지 않으면 active 상태로 변경되지 않는다.
강제 변경 시 복제 불일치가 발생할 수 있으므로 사용하지 않는 것을 권장한다.

-t

5(초)

노드 상태를 standby에서 maintenance로 변경할 때 진행 중이던 트랜잭션이 정상 종료되기까지 대기하는 시간을 설정한다. 설정한 시간이 지나도 트랜잭션이 진행 중이면 강제 종료 후 maintenance 상태로 변경하고, 설정한 시간 이내에 모든 트랜잭션이 정상 종료되면 즉시 maintenance 상태로 변경한다.

상태 변경 가능 표

다음은 현재 상태에 따라 변경할 수 있는 상태를 표시한 표이다.

 

변경할 상태

active

standby

maintenance

현재 상태

standby

X

O

O

to-be-standby

X

X

X

active

O

X

X

to-be-active

O*

X

X

maintenance

X

O

O

* 서버가 to-be-active 상태일 때 active 상태로 강제 변경하면 복제 불일치가 발생할 수 있으므로 관련 내용을 충분히 숙지한 사용자가 아니라면 사용하지 않는 것을 권장한다.

예시

다음 예는 localhost 노드의 testdb01 서버 상태를 maintenance 상태로 변경한다. 이때 진행 중이던 모든 트랜잭션이 정상 종료하기까지 대기하는 시간은 -t 옵션의 기본값인 5초이다. 이 시간 이내에 모든 트랜잭션이 종료되면 즉시 상태를 변경하며, 이 시간이 지나도 진행 중인 트랜잭션이 존재하면 이를 롤백한 후 상태를 변경한다.

$ cubrid changemode -m maintenance testdb01@localhost

The server 'testdb01@localhost''s current HA running mode is maintenance.

다음 예는 localhost 노드의 testdb01 서버의 상태를 조회한다.

$ cubrid changemode testdb01@localhost

The server 'testdb01@localhost''s current HA running mode is active.