ページの先頭行へ戻る
Symfoware Server V10.1.0 RDB運用ガイド

11.4 ログ管理ファイルのリカバリ

データベースの運用中に、ログ管理ファイルに入出力障害が発生した場合のリカバリ方法について説明します。

システムメッセージ“qdg12251e”、“qdg12434u”または“qdg12443u”が出力されます。さらに、スケーラブルログ運用を行っている場合は、システムメッセージ“qdg13239i”が出力されます。このメッセージより、リカバリすべきログ管理ファイルのロググループ名を特定してください。rdblogコマンド実行時には、“-g ロググループ名”を指定し、ユーザロググループに属する資源にのみ処理を行ってください。ロググループ管理ファイルとログ管理ファイルを同一のディスクに配置している場合と、配置していない場合で、リカバリ手順が異なるので注意してください。

この場合のリカバリ操作の手順とリカバリ操作例を以下に示します。

リカバリ操作の手順

(1) 業務中にログ管理ファイルのアクセスエラーが発生
    した場合、システムメッセージを出力して、ログ
    管理ファイルを閉塞します。
    スケーラブルログ運用を行っている場合は、シス
    テムメッセージより、リカバリすべきログ管理ファイ
    ルのロググループ名を特定します。
(2) Symfoware/RDBを停止または強制停止               ―――――― rdbstopコマンド
    します。                                                     (オプションなし/
                                                                 eオプション)
(3) 障害ディスクを取り換えます。                    ―――――― CE作業
(4) ディレクトリ構成をリカバリします。              ―――――― mkdirコマンド
      スケーラブルログ運用を行っていない場合        → (8)へ
      ロググループ管理ファイルとログ管理ファ
      イルを同一のディスクに配置している場合        → (5)へ
      ロググループ管理ファイルとログ管理ファ
      イルを同一のディスクに配置していない場合      → (9)へ
(5) ロググループ管理ファイルを作成します。          ―――――― rdblogコマンド
                                                                 (Mオプション)
(6) 同一ディスク以外のすべてのユーザロググループの  ―――――― rdblogコマンド
    ログ管理ファイルを再登録します。                             (Aオプションかつ
                                                                 Iオプション)
(7) 当該ロググループ以外のすべてのログ管理ファイルが―――――― rdblogコマンド
    正常に登録されたことを確認します。                           (Vオプションかつ
                                                                 Iオプション)
(8) ログ管理ファイルを作成します。                  ―――――― rdblogコマンド
      スケーラブルログ運用を行っていない場合                     (Iオプション)
      またはシステムロググループの場合
      ユーザロググループの場合                                  (Iオプションかつ
                                                                gオプション)
    スケーラブルログ運用の場合は以下の全手順                     
    を当該ロググープを対象にして作業を実施して
    ください。
      アーカイブログ運用を行っている場合            → (10)へ
      アーカイブログ運用を行っていない場合          → (12)へ
(9) 当該ロググループのログ管理ファイルを作成       ―――――― rdblogコマンド
    または再作成します。
      システムロググループの場合                                (Iオプション)
      ユーザロググループの場合                                  (Iオプションかつ
                                                               rオプションかつ
    スケーラブルログ運用の場合は以下の全手順                      gオプション)
    を当該ロググープを対象にして作業を実施して
    ください。
      アーカイブログ運用を行っている場合            → (10)へ
      アーカイブログ運用を行っていない場合          → (12)へ
(10) すべてのアーカイブログファイルを再登録します。  ―――――― rdblogコマンド
                                                                 (Aオプションかつ
                                                                 aオプション)
(11) すべてのアーカイブログファイルが正常に登録された―――――― rdblogコマンド
    ことを確認します。
      スケーラブルログ運用を行っていない場合                     (Vオプションかつ
                                                                 aオプション)
      スケーラブルログ運用を行っている場合                       (Vオプションかつ
                                                                 aオプションかつ
                                                                 gオプション) 
(12) テンポラリログファイルを再登録します。         ―――――― rdblogコマンド
                                                                 (Aオプションかつ
                                                                 tオプション)
     同一ディスクにテンポラリログファイルを配置
     している場合は、そのテンポラリログファイル
     のリカバリを行います 
     → “11.5 テンポラリログファイルのリカバリ”
         を参照してください。
(13) テンポラリログファイルが正常に登録されたことを ―――――― rdblogコマンド
     確認します。
       スケーラブルログ運用を行っていない場合                    (Vオプションかつ
                                                                 tオプション) 
       スケーラブルログ運用を行っている場合                      (Vオプションかつ
                                                                 tオプションかつ
                                                                 gオプション) 
(14) Symfoware/RDBを起動します。                    ―――――― rdbstartコマンド

リカバリ操作例

ここでは、以下の場合を想定しています。

qdg12251e:ログ管理ファイルの入出力障害が発生しました errno=5 (システム名=rdbsys1) 
qdg13239i:ロググループ'grp1'において事象'qdg12251e'が発生しました 
  (システム名=rdbsys1) 

qdg13301e:ログ管理ファイルを閉塞しました (システム名=rdbsys1) 
qdg13239i:ロググループ'grp1'において事象'qdg13301e'が発生しました 
  (システム名=rdbsys1) 

> rdbstop 

CE作業  …  障害ディスクの交換 

> mkdir D:\SFWD\RDB\USR\LOG

> rdblog -I -r -g grp1 D:\SFWD\RDB\USR\ULOG\TLOGMNG

> rdblog -A -a D:\SFWD\RDB\USR\LOG\ARCLOG1 
> rdblog -A -a D:\SFWD\RDB\USR\LOG\ARCLOG2 

> rdblog -V -a -g grp1 

> rdblog -A -t D:\SFWD\RDB\USR\LOG\TMPLOG 

> rdblog -V -t -g grp1 

> rdbstart