DBミラーリングサービスの運用中に、以下のコマンドが異常終了した場合のリカバリ方法について説明します。
dxsvstart
dxsvstop
dxswitch
コマンドが異常終了した場合は、標準エラー出力に以下のメッセージが出力されます。
32211: dxsvstart('オプション名')コマンドが異常終了しました
32212: dxsvstop('オプション名')コマンドが異常終了しました
32213: dxswitch('オプション名')コマンドが異常終了しました
これらのメッセージの直前にメッセージが出力されている場合は、そのメッセージにしたがってエラー原因を取り除いて、コマンドを再実行してください。
直前にメッセージが出力されていない場合は、dxinfコマンドのsオプションの実行、およびrdbbcdcuコマンドのVオプションおよびbオプションの実行によって状態を確認し、状態に応じたリカバリを行ってください。
運用操作中にコマンドが異常終了した場合のリカバリ操作の手順を以下に説明します。
操作の手順
両ノード共通の操作
標準エラー出力を確認します。
コマンドの異常終了メッセージ以外で異常原因を示すメッセージが出力されている場合は、それにより対処して、コマンドを再実行します。
エラーメッセージが出力されていない場合、dxinfコマンドのsオプションによりDBミラーリングサービスの状態を確認します。
> dxinf -s dxinf DATE:2011/01/04 TIME:21:15:32 RDB-NAME : dup1 Host-Name : DBSVR1 IP-address : 10.128.25.128 Node Status Service S-Scr RDB Switch C normal normal - - Monitoring Polling DB_Timeout DB_Inh DB_Down start stop stop start Network GCM Trans invalid normal
Nodeの情報のうち、ノードの“DBミラーリングサービスの状態(Service) ”、 “DBミラーリングサービススクリプトの状態(S-Scr) ”、“切替えの可否(Switch) ”から、対処方法を確認します。詳細は“表11.1 dxinfコマンドおよびrdbbcdcuコマンドの実行結果とリカバリ方法の関係”を参照してください。
両ノードでrdbbcdcuコマンドのVオプションおよびbオプションにより情報を表示します。
> rdbbcdcu -V -b LogGroup : system RLCbuffNum : 128 RLCbuffSize : 2K RLCnum : 3 RLCsize : 10240K RLPid RLPname Kind OnMode OnStat RLPstat InhCause ConStat DisConCause LogRemain 1 rlp101 origin capture online normal - connection - - 2 rlp102 duplicate init standby normal - disconnection - -
両ノードで実行し、“RLPの状態(RLPstat)”が、“正常(normal) ”か、“RLP閉塞(RLPinh(own)、またはRLPinh(other))”のいずれかを確認します。
コマンド実行時に異常となった場合は、2つのRLPのうち、どちらのRLPがRLP閉塞しているかを、RDBREPORTに出力されている以下のメッセージから確認してください。
qdg20122e:RLPを閉塞しました RLP名='RLP名'
RLPが閉塞していない場合、dxinfコマンドのsオプションの実行結果によって、コマンドの再実行、あるいはリカバリ停止してから、イベントログを参照してエラー原因を取り除き、DBミラーリングサービスの再開、コマンドを再実行します。
RLPが閉塞している場合、DCUの再構築を行います。
dxinfコマンド、rdbbcdcuコマンドの実行結果とリカバリ方法については、以下の表を参照してください。
dxinfコマンドの実行結果 | rdbbcdcuコマンドの実行結果 | 対処方法 | |||
---|---|---|---|---|---|
DBミラーリングサービスの状態(Service) | DBミラーリングサービススクリプトの状態(S-Scr) | 切替えの可否(副系ノードのみ)(Switch) | RLP状態(RLPstat) | 正系ノード | 副系ノード |
normal | normal | enable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
normal | - | disable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
failure | normal | enable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
failure | normal | disable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
failure | failure | disable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
failure | - | disable | normal | リカバリ停止後にイベントログよりエラー原因の対処を実施 | |
failure | -または normalまたは failure | - | RLPinh(own)または RLPinh(other) | DCUの再構築 | |
- | - | - | RLPinh(own)または RLPinh(other) | DCUの再構築 | |
stop | - | - | RLPinh(own)または RLPinh(other) | DCUの再構築 | |
r | - | - | RLPinh(own)または RLPinh(other) | DCUの再構築 | |
m | - | - | RLPinh(own)または RLPinh(other) | DCUの再構築 |
参照
DCUの再構築の詳細については“11.9 DCUの再構築”を参照してください。