テンポラリログファイルの閉塞状態からSymfoware/RDBを正常停止した場合は、rdblogコマンドにより、テンポラリログファイルの再作成または作成を行ってください。
参照
rdblogコマンドの指定方法の詳細については、“コマンドリファレンス”を参照してください。
この場合のリカバリ操作の手順とリカバリ操作例を以下に示します。
リカバリ操作の手順
(1) 業務中にテンポラリログファイルのアクセスエラー が発生した場合、システムメッセージを出力して、 テンポラリログファイルを閉塞します。 スケーラブルログ運用を行っている場合は、シス テムメッセージにより、リカバリすべきテンポラリロ グファイルのロググループを特定します。 (2) トランザクションの状態(Tran)の“TINH” ―――――― rdbcninfコマンド がなくなるまで待ちます。 (3) Symfoware/RDBを停止します。 ―――――― rdbstopコマンド (4) 障害ディスクを取り換えます。 ―――――― CE作業 (5) ディレクトリ構成をリカバリします。 ―――――― mkdirコマンド ログ管理ファイルとテンポラリログファイルを 同一のディスクに配置している場合 → (6)へ ログ管理ファイルとテンポラリログファイルを 同一のディスクに配置していないかつアーカイブ ログ運用を行っていない場合 → (9)へ ログ管理ファイルとテンポラリログファイルを 同一のディスクに配置していないかつアーカイブ ログ運用を行っている場合 → (10)へ (6) ログ管理ファイルを作成します。 ―――――― rdblogコマンド スケーラブルログ運用を行っていない場合または (Iオプション) システムロググループの場合 ユーザロググループの場合 (Iオプションかつ rオプションかつ gオプション) アーカイブログ運用を行っている場合 → (7)へ アーカイブログ運用を行っていない場合 → (10)へ (7) アーカイブログファイルを再登録します。 ―――――― rdblogコマンド (Aオプションかつ aオプション) (8) アーカイブログファイルが正常に登録されたことを確認―――――― rdblogコマンド します。 スケーラブルログ運用を行っていない場合 (Vオプションかつ aオプション) スケーラブルログ運用を行っている場合 (Vオプションかつ aオプションかつ gオプション) (5)でログ管理ファイルを作成していない場合 → (9)へ (5)でログ管理ファイルを作成した場合 → (10)へ (9) テンポラリログファイルを強制的に削除します。 ―――――― rdblogコマンド (Dオプションかつ tオプションかつ eオプション) (10) テンポラリログファイルを再作成(アーカイブログ運用―――――― rdblogコマンド を行っている場合)または作成(アーカイブログ運用を 行っていない場合)します。 スケーラブルログ運用を行っていない場合 (Gオプションかつt オプション(かつ rオプション)) スケーラブルログ運用を行っている場合 (Gオプションかつ tオプションかつ (rオプションかつ) gオプション) (11) テンポラリログファイルが正常に再作成されたことを ―――――― rdblogコマンド 確認します。 スケーラブルログ運用を行っていない場合 (Vオプションかつ tオプション) スケーラブルログ運用を行っている場合 (Vオプションかつ tオプションかつ gオプション) (12) Symfoware/RDBを起動します。 ―――――― rdbstartコマンド (13) ロールバック不可閉塞となった資源をリカバリします。 “11.7.1 ロールバック不可からのリカバリ” を実行してください。
リカバリ操作例
ここでは、以下の場合を想定しています。
ログ管理ファイルとテンポラリログファイルを同一のディスクに配置していない
アーカイブログ運用を行っている
ユーザロググループ
スケーラブルログ運用を行っていない場合およびシステムロググループの場合は、rdblogコマンドのgオプション(ロググループ名の指定)を省略して実行してください。
qdg12111u:テンポラリログファイルに 入出力障害が発生しました ファイル名='D:\SFWD\RDB\USR\LOG\TMPLOG' errno=5 (システム名=rdbsys1) qdg13239i:ロググループ'grp1'において事象'qdg12111u'が発生しました (システム名=rdbsys1) qdg13303e:テンポラリログファイルを閉塞しました (システム名=rdbsys1) qdg13239i:ロググループ'grp1'において事象'qdg13303e'が発生しました (システム名=rdbsys1) > rdbcninf -s > rdbstop CE作業 … 障害ディスクの交換 > mkdir D:\SFWD\RDB\USR\LOG > rdblog -G -t -r -g grp1 -c 10M D:\SFWD\RDB\USR\LOG\TMPLOG -in -in 30M 30M 20 > rdblog -V -t -g grp1 > rdbstart
注意
Symfoware/RDBの停止は、テンポラリログファイルの閉塞以前より開始していたトランザクションの終了を待ってから行ってください。トランザクションの終了は、rdbcninfコマンドで確認することができます。それらのトランザクションは、トランザクションの状態(Tran)の“TINH”が解除されるまで、以下のようになりますので、注意してください。
ロールバックされると、トランザクションで更新していた資源(DSI)は、ロールバック不可能による閉塞が行われます。
実行中にダウンすると、トランザクションで更新していた資源(DSI)は、ダウンリカバリ不可能による閉塞が行われます。