원인
특정 그룹의 전체 멤버에 접근할 수 없는 경우 발생합니다.
ERR-42000(16357): must be accessible to at least one member of group 'G4'
해결방안
특정 그룹의 전체 멤버가 INACTIVE 상태인지 확인합니다.
gSQL> SELECT * FROM X$CLUSTER_MEMBER@LOCAL; MEMBER_ID MEMBER_POSITION LOGICAL_CONNECTION PHYSICAL_CONNECTION SERIAL IS_GLOBAL_COORD IS_DOMAIN_COORD LOCAL_SCN LOCAL_MIN_TRANS_VIEW_SCN AGABLE_SCN AGABLE_STMT_SCN AGABLE_VIEW_SCN --------- --------------- ------------------ ------------------- ------ --------------- --------------- ----------- ------------------------ ----------- --------------- --------------- 1 0 ACTIVE ACTIVE 1 FALSE FALSE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2 1 ACTIVE ACTIVE 1 TRUE TRUE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 3 2 ACTIVE ACTIVE 1 FALSE TRUE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 4 3 ACTIVE ACTIVE 1 FALSE TRUE 2378.0.1337 2378.0.1337 2378.0.1337 2378.0.1337 2378.0.1337 5 4 ACTIVE ACTIVE 1 FALSE TRUE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 6 5 ACTIVE ACTIVE 1 FALSE FALSE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 7 6 ACTIVE ACTIVE 1 FALSE FALSE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0 8 7 INACTIVE INACTIVE 0 FALSE FALSE -1.-1.-1 -1.-1.-1 -1.-1.-1 -1.-1.-1 -1.-1.-1 9 8 ACTIVE ACTIVE 1 FALSE FALSE 2378.0.0 2378.0.0 2378.0.0 2378.0.0 2378.0.0
방법 1. DROP INACTIVE 구문을 사용하여 INACTIVE 인 데이터베이스를 클러스터에서 제외시킵니다.
방법 2. INACTIVE 인 데이터베이스를 클러스터에 REJOIN 합니다.
특정그룹의 전체 멤버가 종료 된 후, 한 멤버만 조인한 경우
클러스터는 특정그룹의 모든 멤버가 종료된 경우, 다시 조인한 멤버가 그룹의 가장 최신 SCN 을 가지고 있었는지 판단할 수 없으므로,
REBALANCE 를 한다고 해도, 그룹에 속한 객체들을 ONLINE ( MEMBER_OFFLINE = TRUE ) 으로 변경하지 않습니다.
gSQL> SELECT * FROM USER_TAB_PLACE WHERE TABLE_NAME = 'T1'; ERR-01000(16394): Warning: connection of member 'G4N2' is broken TABLE_SCHEMA TABLE_NAME GROUP_ID GROUP_NAME MEMBER_ID MEMBER_NAME MEMBER_OFFLINE SCN NUM_ROWS BLOCKS LAST_ANALYZED ------------ ---------- -------- ---------- --------- ----------- -------------- ----------- -------- ------ ------------- BITPRO T1 1 G1 1 G1N1 FALSE 2302.0.964 null 64 null BITPRO T1 1 G1 5 G1N2 FALSE 2302.0.1756 null 64 null BITPRO T1 1 G1 9 G1N3 FALSE 2302.0.1754 null 64 null BITPRO T1 2 G2 2 G2N1 FALSE 2302.0.1833 null 128 null BITPRO T1 2 G2 6 G2N2 FALSE 2302.0.1831 null 128 null BITPRO T1 3 G3 3 G3N1 FALSE 2302.0.1832 null 64 null BITPRO T1 3 G3 7 G3N2 FALSE 2302.0.1831 null 64 null BITPRO T1 4 G4 4 G4N1 TRUE 2302.0.1292 null 64 null BITPRO T1 4 G4 8 G4N2 TRUE null null null null
따라서, 한 멤버만 조인한 경우, 아래 두 가지 중 하나를 택해 진행한 뒤 운영에 돌입합니다.
방법 1. 그룹의 다른 모든 멤버들도 조인시킨 후, REBALANCE 를 진행합니다.
방법 2. ALTER DATABASE DROP INACTIVE CLUSTER MEMBERS; 구문을 사용하여 INACTIVE 상태인 멤버를 클러스터에서 제외한 뒤, REBLANCE 를 진행합니다.