ページの先頭行へ戻る
Symfoware Server V11.0.1 クラスタ導入運用ガイド
Symfoware

10.3.4 テンポラリログファイルのリカバリ

テンポラリログファイルのリカバリには、Symfoware/RDB運用中に行う方法と、Symfoware/RDB停止中に行う方法があります。Symfoware/RDB運用中のリカバリは、Symfoware Server Enterprise Extended Editionで利用できます。

テンポラリログファイルに入出力障害が発生した場合、Symfoware/RDBは自動的にフォールバック運用になります。このため、業務スケジュールの都合が良い時間にリカバリしてください。

参照

フォールバック運用については、“RDB運用ガイド”を参照してください。

テンポラリログファイルのリカバリは、rdblogコマンドでリカバリをします。

参照

各コマンドのオプションの指定方法の詳細については、“コマンドリファレンス”を参照してください。

Symfoware/RDB運用中のリカバリ

システムロググループの場合は、Capitalシステムの運用ノードでリカバリをしてください。

ユーザロググループの場合は、ロググループが偏在するSatelliteシステムでリカバリをしてください。

リカバリ操作の手順は、“6.5.1 Symfoware/RDB運用中のリカバリ”を参照してください。

Symfoware/RDB停止中のリカバリ
リカバリ操作の手順

Capitalシステムが稼動する任意のノードで、RDBNAMEにCAPITALを指定して、以下の手順でリカバリをしてください。

なお、RDBディクショナリ、または、RDBディレクトリファイルが破壊されている場合は、rdbadjrcvコマンドは実行できないため、(17)の手順を迂回して実施してください。

 (1) スケーラブル型のクラスタアプリケーションに登録されているすべての
    運用系および待機系のクラスタアプリケーションを保守停止します。
    クラスタアプリケーションの保守停止の手順は、
    “9.5 クラスタアプリケーションの保守のための停止”を
    参照してください。
(2) 媒体障害の場合は、障害ボリュームを取り換え、                      ―――― CE作業
    ボリュームの構成情報をリカバリします。
    ロググループ管理ファイルとログ管理ファイルを
    テンポラリログファイルと同一のローデバイスに
    配置している場合                                                   ⇒(3)
    ログ管理ファイルをテンポラリログファイルと同一
    のローデバイスに配置している場合                                   ⇒(6)
    上記以外の場合                                                     ⇒(9)
(3) ロググループ管理ファイルを作成します。                            ―――― rdblogコマンド
                                                                              (Mオプション)
(4) 同一ローデバイス以外のすべてのロググループのログ                  ―――― rdblogコマンド
    管理ファイルを再登録します。                                              (Aオプションかつ
                                                                              Iオプション)
(5) 当該ロググループ以外のすべてのロググループのログ                  ―――― rdblogコマンド
    管理ファイルが正常に登録されたことを確認します。                          (Vオプションかつ
                                                                              Iオプション)
(6) ログ管理ファイルを作成します。                                    ―――― rdblogコマンド
    システムロググループの場合                                                (Iオプション)
    ユーザロググループかつ(3)によりロググループ管理                          (Iオプションかつ
    ファイルを作成している場合                                                gオプション)
    ユーザロググループかつ(3)によりロググループ管理                          (Iオプションかつ
    ファイルを作成していない場合                                              rオプションかつ
                                                                              gオプション)
(7) すべてのアーカイブログファイルを再登録します。                    ―――― rdblogコマンド
                                                                              (Aオプションかつ
                                                                               aオプション)
(8) すべてのアーカイブログファイルが正常に登録された                  ―――― rdblogコマンド
    ことを確認します。                                                        (Vオプションかつ
                                                                              aオプションかつ
                                                                              gオプション)
(9) テンポラリログファイルを再作成します。                            ―――― rdblogコマンド
                                                                              (Gオプションかつ
                                                                               tオプションかつ
                                                                               rオプションかつ
                                                                               gオプション)
(10) テンポラリログファイルが正常に登録されたことを                  ―――― rdblogコマンド
    確認します。                                                             (Vオプションかつ
                                                                              tオプションかつ
                                                                              gオプション)
(11) (6)でログ管理ファイルを作成した場合は、                        ―――― rdblogコマンド
     インダウトログファイルを再登録します。                                  (Aオプションかつ
    同一ローデバイスにインダウトログファイルを                                iオプション)
    配置している場合は、そのインダウトログファイル
    のリカバリを行います。
    “10.3.6 インダウトログファイルのリカバリ”を参照してください。
    その場合、“10.3.6 インダウトログファイルのリカバリ”に記載されている
    手順のうち、本手順の(1)~(10)で実施済みの操作については、
    実行する必要はありません。
    また、“10.3.6 インダウトログファイルのリカバリ”の手順により
    インダウトログファイルのリカバリを実施した場合は、本手順の
    (12)以降の操作を実行する必要はありません。
(12) インダウトログファイルが正常に登録されたことを                  ―――― rdblogコマンド
    確認します。                                                             (Vオプションかつ
                                                                              iオプションかつ
                                                                              gオプション)
(13) ユーザロググループかつ(6)によりログ管理ファイルを
     作成している場合
     ユーザロググループ用のRDBディレクトリファイルを再登録します。   ―――― rdbscldirコマンド
                                                                             (Aオプションかつ
                                                                              gオプション)

(14) ユーザロググループ用のRDBディレクトリファイルが
     正常に登録されたことを確認します。                              ―――― rdbscldirコマンド
                                                                             (Vオプションかつ
                                                                              gオプション)
(15) Symfoware/RDBを起動します。(動作確認)                           ―――― rdbstartコマンド
(16) Symfoware/RDBを停止します。(動作確認)                           ―――― rdbstopコマンド
     RDBディクショナリ、または、RDBディレクトリファイルも
     破壊されている場合                                            ⇒(18)
(17) アーカイブログファイルを使用してデータベース                  ―――― rdbadjrcvコマンド
    をリカバリします。                                                      (gオプション)
    rdbadjrcvコマンドによって、RDBディクショナリ
    がリカバリできなかった場合                                     ⇒(18)
    rdbadjrcvコマンドによって、RDBディクショナリ
    がリカバリできた場合                                           ⇒(19)
(18) rdbrcvdicコマンドのFWモードでRDBディクショナリと             ―――― rdbrcvdicコマンド
    RDBディレクトリファイルをリカバリします。                             (Fオプションかつ
    RDBディクショナリとRDBディレクトリファイルのリカバリは、              ddlオプション)
    インクリメンタルリカバリによるリカバリを推奨します。
    (縮退運転の時間が短縮できます。)
(19) リカバリしたユーザロググループ用のRDBディレクトリ            ―――― rdbscldirコマンド
    ファイル以外にアクセス禁止状態のユーザロググループ                    (Vオプション)
    用のRDBディレクトリファイルが存在していた場合は、
    “6.2.4 ユーザロググループ用のRDBディレクトリファイルのリカバリ”の
    (3)と(4)の手順を実施します。                      ⇒(20)
(20) Symfoware/RDBを起動します。                                  ―――― rdbstartコマンド
    (18)を実行している場合                                        ⇒(21)
    (18)を実行していない場合                                      ⇒(22)
(21) ホットスタンバイの使用を宣言します。                         ―――― rdbhsutyコマンド
                                                                          (monオプション)
(22) Symfoware/RDBを停止します。                                  ―――― rdbstopコマンド
(23) スケーラブル型のクラスタアプリケーションに登録されている
    すべての運用系および待機系のクラスタアプリケーションの
    保守停止を解除します。
    クラスタアプリケーションの保守停止解除の手順は、
    “9.6 クラスタアプリケーションの保守停止の解除”を
    参照してください。

以下の処理はDSIが偏在するSatelliteシステムで実施してください。

(24) rdbadjrcvコマンドでリカバリできなかった資源をリカバリします。  ―――― rdbinhコマンド
    (17)のrdbadjrcvコマンドを実施していないか、                             (iオプション)
    (18)のRDB ディクショナリのリカバリができなかった場合は、                 ―――― rdbrcvコマンド
    登録されたすべての資源(DSI)をrdbinhコマンドでアクセス禁止状態にし、                     (Fオプション)
    登録されたすべての資源(DSI)をrdbrcvコマンドのFWモードで
    リカバリしてください。
    (17)のrdbadjrcvコマンドでリカバリできなかった資源(DSI)は、
    rdbadjrcvコマンドの実行時にメッセージで出力されます。
    rdbadjrcvコマンドの実行時にメッセージで出力された
    リカバリができなかった資源(DSI)をrdbinhコマンドにより
    アクセス禁止状態にした後、同じ資源(DSI)をrdbrcvコマンドの
    FWモードでリカバリします。
(25) 他のRDBシステム(すべてのSatelliteシステム)とデータ
    ベースの整合を参照系アプリケーションなどで確認します。
    アーカイブログからのリカバリ後のデータベースにおいては、
    テンポラリログファイルの入出力障害が発生したノード内
    のデータベースに対して、少し前にコミットした更新が、そ
    のノード内だけロールバックになっている可能性があります。
    データベースリカバリ後、どこまでの更新が完了しているかを
    参照系アプリケーションなどで確認し、必要に応じて対象となる
    ノードのデータベースの再更新を行ってください。
(26) rdbadjrcvコマンドでリカバリできなかった資源の退避            ―――― rdbdmpコマンド
    データを取得します。
    ((17)のrdbadjrcvコマンドのFWモードでリカバリした資源(DSI)
    の退避データを取得します。)
    (17)のrdbadjrcvコマンドを実施していないか、
    RDBディクショナリがリカバリできなかった場合は、
    すべての表のDSIの退避データを取得します。

以下の処理はCapitalシステムで実施してください。

(27) RDBディクショナリのリカバリを行った場合は、RDBディクショ      ―――― rdbdmpdicコマンド
    ナリの退避データも取得します。

備考. (4)以降の操作は当該ロググループを対象にして作業を実施します。

注意

  • rdbadjrcvコマンドによりデータベースのリカバリを行う際には、トランザクションの整合性を保証するため、テンポラリログファイルのAIログ域サイズ以上のアーカイブログ量が必要になります。このため、指定したアーカイブログファイル内のアーカイブログ量によってはコマンドが異常終了する場合があります。その場合は、さらに以前の退避アーカイブログファイルを併せて指定して、コマンドを再実行してください。

  • テンポラリログファイルの入出力障害が発生する少し前にコミットした更新がロールバックになっている可能性があります。データリカバリ後、どこまでの更新が完了しているか確認し、必要に応じて再更新などを行ってください。

  • スケーラブルログ運用を行っていてアーカイブログ退避データを指定する場合は、リカバリ対象のDSIが属するロググループのアーカイブログ退避データを指定する必要があります。