Symfoware/RDB運用中にテンポラリログファイルをリカバリする場合のリカバリ操作の手順とリカバリ操作例を以下に示します。
Symfoware/RDB運用中のリカバリは、Symfoware Server Enterprise Extended Editionで利用できます。
(1) 業務中にテンポラリログファイルのアクセスエラーが発生した場合、システム メッセージを出力して 、テンポラリログファイルを閉塞します。 スケーラブルログ運用を行っている場合は、システムメッセージにより、リカバリすべき テンポラリログファイルのロググループを特定します。 ログ管理ファイルとテンポラリログファイルを同一のボリュームに 配置している場合 → (2)へ ログ管理ファイルとテンポラリログファイルを同一のボリュームに 配置していない場合 → (4)へ (2) ログ管理ファイルを閉塞します。 ――― rdblogコマンド (Hオプションかつ Iオプション [かつgオプション]) ロググループ管理ファイルとログ管理ファイルを同一のボリュームに 配置している場合 → (3)へ ロググループ管理ファイルとログ管理ファイルを同一のボリュームに 配置していない場合 → (4)へ (3) ロググループ管理ファイルを閉塞します。 ――― rdblogコマンド (Hオプションかつ Mオプション) (4) 障害ボリュームを取り換えます。 ――― CE作業 (5) ボリュームの構成情報をリカバリします。 ――― partedコマンド ロググループ管理ファイル、ログ管理ファイル、テンポラリログファイルを 同一のボリュームに配置している場合 → (6)へ ログ管理ファイルとテンポラリログファイルを 同一のボリュームに配置している場合 → (7)へ ロググループ管理ファイル、ログ管理ファイル、テンポラリログファイルを 同一のボリュームに配置していない場合 → (8)へ (6) ロググループ管理ファイルをリカバリし閉塞を解除しま ――― rdblogコマンド す。 (Pオプションかつ Mオプション) (7) ログ管理ファイルをリカバリし閉塞を解除します。 ――― rdblogコマンド (Pオプションかつ Iオプション [かつgオプション]) (8) テンポラリログファイルをリカバリし閉塞を解除します。 ――― rdblogコマンド (Pオプションかつ tオプション [かつgオプション]) (9) トランザクションの状態(Tran)の“TINH”が無くなる ――― rdbcninfコマンド まで待ちます。 (10) ロールバック不可閉塞となった資源をリカバリします。 “11.7.1 ロールバック不可からのリカバリ”を実行してください。 (11) 目的業務を再開します。
ここでは、以下の場合を想定しています。
ロググループ管理ファイル、ログ管理ファイル、テンポラリログファイルを同一のボリュームに配置していない
ユーザロググループ
スケーラブルログ運用を行っていない場合およびシステムロググループの場合は、rdblogコマンドのgオプション(ロググループ名の指定)を省略して実行してください。
rdb: ERROR: qdg12111u: テンポラリログファイルに 入出力障害が発生しました ファイル名='/dev_symfoware/raw22' errno=5 (システム名=rdbsys1) rdb: INFO : qdg13239i: ロググループ'grp1'において事象'qdg12111u'が発生しました (システム名=rdbsys1) rdb: ERROR: qdg13303e: テンポラリログファイルを閉塞しました(システム名=rdbsys1) rdb: INFO : qdg13239i: ロググループ'grp1'において事象'qdg13303e'が発生しました (システム名=rdbsys1) CE作業 … 障害ボリュームの交換およびボリューム構成情報のリカバリ $ rdblog -P -t -g grp1 $ rdbcninf -s
注意
閉塞状態のテンポラリログファイルをリカバリして閉塞状態を解除するには、メモリ上の情報を使用します。そのため、テンポラリログファイルが閉塞状態のままSymfoware/RDBを停止すると、Pオプションによるリカバリを行うことはできません。必ず、Symfoware/RDBを停止する前にPオプションによりテンポラリログファイルをリカバリしてください。なお、Pオプションによりテンポラリログファイルをリカバリする前にSymfoware/RDBを停止してしまった場合は、“11.5.2 Symfoware/RDB停止中のリカバリ”に従ってリカバリしてください。
テンポラリログファイルのリカバリ後は、業務の再開が可能です。テンポラリログファイルの閉塞以前より開始していたトランザクションについては、rdbcninfコマンドで確認することができます。それらのトランザクションは、トランザクションの状態(Tran)の“TINH”が解除されるまで、以下のようになりますので、注意してください。
ロールバックされると、トランザクションで更新していた資源(DSI)は、ロールバック不可能による閉塞が行われます。
実行中にダウンすると、トランザクションで更新していた資源(DSI)は、ダウンリカバリ不可能による閉塞が行われます。
テンポラリログファイルの入出力障害以外の理由でボリューム交換を行う場合は、ボリュームの交換を行う前に、テンポラリログファイルを閉塞状態にしてください。テンポラリログファイルの閉塞は、rdblogコマンドのHオプションおよびtオプションで行います。