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

11.6 アーカイブログファイルのリカバリ

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

システムメッセージ“qdg03815u”、“qdg12250u”、“qdg12275w”または“qdg12483u”が出力されます。さらに、スケーラブルログ運用を行っている場合は、システムメッセージ“qdg13239i”が出力されます。このメッセージより、リカバリすべきアーカイブログファイルのロググループ名を特定してください。rdblogコマンド実行時には、“-g ロググループ名”を指定し、ユーザロググループに属する資源にのみ処理を行ってください。

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

リカバリ操作の手順

(1) 業務中にアーカイブログファイルのアクセスエラー
    が発生した場合、システムメッセージを出力して、
    アーカイブログファイルを閉塞します。同時に、
    空きアーカイブログファイルがある場合は、自動
    的に切り替わります。
    スケーラブルログ運用を行っている場合は、シス
    テムメッセージにより、リカバリすべきアーカイブログ
    ファイルのロググループを特定します。
(2) Symfoware/RDBを停止します。                     ―――――― rdbstopコマンド 
(3) 障害ディスクを取り換えます。                    ―――――― CE作業 
(4) ディレクトリ構成をリカバリします。              ―――――― mkdirコマンド
(5) アーカイブログファイルの状態を表示します。      ―――――― rdblogコマンド
                                                                 (Vオプションかつ
                                                                 aオプション
                                                                 [かつgオプション])
(6) すべてのアーカイブログファイルを削除します。    ―――――― rdblogコマンド
                                                                 (Dオプションかつ
                                                                 aオプション
                                                                 [かつgオプション])
(7) アーカイブログファイルを作成します。            ―――――― rdblogコマンド
                                                                 (Gオプションかつ
                                                                 aオプション
                                                                 [かつgオプション])
                                                                 (Uオプションかつ
                                                                 aオプション
                                                                 [かつgオプション])
(8) すべてのアーカイブログファイルが正常に作成された―――――― rdblogコマンド
    ことを確認します。                                           (Vオプションかつ
                                                                 aオプション
                                                                 [かつgオプション])
(9) Symfoware/RDBを起動します。                     ―――――― rdbstartコマンド 
      スケーラブルログ運用を行っていない場合または、
    システムロググループの場合                      → (10)へ
      ユーザロググループの場合                      → (11)へ
(10) RDBディクショナリの退避データを取得します。     ―――――― rdbdmpdicコマンド
(11) すべての資源の退避データを取得します。         ―――――― rdbdmpコマンド 
     スケーラブルログ運用の場合はリカバリ対象のログ
     グループに属する資源のみ退避データが必要です。

リカバリ操作例

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

ユーザロググループの場合は、rdblogコマンドにgオプション(ロググループ名の指定)を指定して実行してください。

qdg12275w:アーカイブログファイルD:\SFWD\RDB\USR\LOG\ARCLOG3(通番:125)への書き込み時に
  writeシステムコールでエラーが発生しました errno=5 (システム名=rdbsys1) 

> rdbstop 

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

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

> rdblog -V -a 
serial#  status  total  used     avail     capacity  backup-data path 
      4  full    10M    10M      0         100%      -----       D:\SFWD\RDB\USR\LOG\ARCLOG1
      5  switch  10M    5419520  26037760   17%      -----       D:\SFWD\RDB\USR\LOG\ARCLOG2
      6  inh     10M    974336   30482944   3%       -----       D:\SFWD\RDB\USR\LOG\ARCLOG3

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

> rdblog -G -a D:\SFWD\RDB\USR\LOG\ARCLOG1 10M 

> rdblog -U -a D:\SFWD\RDB\USR\LOG\ARCLOG2 
> rdblog -U -a D:\SFWD\RDB\USR\LOG\ARCLOG3 

> rdblog -V -a 

serial#  status  total  used     avail     capacity  backup-data path 
      7  empty   10M    0        10M       0%        -----       D:\SFWD\RDB\USR\LOG\ARCLOG1
      0  empty   10M    0        10M       0%        -----       D:\SFWD\RDB\USR\LOG\ARCLOG2
      0  empty   10M    0        10M       0%        -----       D:\SFWD\RDB\USR\LOG\ARCLOG3

> rdbstart 

> rdbdmpdic -f DICBACK@E:\BACKUP\DIC -e -y

> rdbdmp -i 在庫管理DB.在庫表DSI -f STOCK@E:\BACKUP\DB -e -y 

注意

  • アーカイブログファイルの再作成後は、DSIおよびRDBディクショナリの退避データを採取しなおしてください。アーカイブログファイルが再作成された場合、アーカイブログファイルが再作成される以前に採取された退避データを使用したメディアリカバリができなくなるためです。

  • アーカイブログファイルが異常状態になり、かつDSIとRDBディクショナリの両方、または、いずれかが異常状態となった場合は、アーカイブログファイルを再作成し、DSIおよびRDBディクショナリを復元後にDSIおよびRDBディクショナリの退避データを採取しなおしてください。