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

6.5.2 Symfoware/RDB停止中のリカバリ

Symfoware/RDB停止中にリカバリする場合のリカバリ操作の手順を以下に示します。

リカバリ操作の手順

運用系のRDBシステムで、以下の手順でリカバリをしてください。

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

(1)スタンバイ型のクラスタアプリケーションの状態を確認します。            ―――― Cluster Admin
(2)クラスタアプリケーションの状態が「運用中」または「片側運用」のときは、
    運用系および待機系のクラスタアプリケーションを保守停止します。
    クラスタアプリケーションの保守停止手順は、
    “5.6 クラスタアプリケーションの保守のための停止”を
    参照してください。
(3)媒体障害の場合は、障害ボリュームを取り換え、                      ―――― CE作業
    ボリュームの構成情報をリカバリします。
(4)GDSリソースを活性状態にします。
    GDSリソースの活性手順は、“3.4.1 GDSリソースの活性”を参照してください。
    ロググループ管理ファイルとログ管理ファイルとテンポラリログファイルを
    同一ローデバイスに配置している場合                                ⇒(5) 
    ログ管理ファイルとテンポラリログファイルを同一ローデバイス
    に配置している場合                                                ⇒(8)
    ログ管理ファイルとテンポラリログファイルを同一ローデバイス
    に配置していない場合                                              ⇒(11)
(5)ロググループ管理ファイルを作成します。                            ―――― rdblogコマンド
                                                                              (Mオプション)
(6)同一ローデバイス以外のすべてのロググループの                      ―――― rdblogコマンド
    ログ管理ファイルを再登録します。                                          (Aオプションかつ
                                                                              Iオプション)
(7)同一ローデバイス以外のすべてのログ管理ファイルが                  ―――― rdblogコマンド
    正常に登録されたことを確認します。                                        (Vオプションかつ
                                                                              Iオプション
(8)ログ管理ファイルを作成します。                                    ―――― rdblogコマンド
    スケーラブルログ運用ではない場合またはシステムログ                        (Iオプション)
    グループの場合
    ユーザロググループかつ(5)によりロググループ管理                          (Iオプションかつ
    ファイルを作成している場合                                                gオプション)
    ユーザロググループかつ(5)によりロググループ管理                          (Iオプションかつ
    ファイルを作成していない場合                                              rオプションかつ
                                                                              gオプション)
(9)すべてのアーカイブログファイルを再登録します。                   ―――― rdblogコマンド
                                                                            (Aオプションかつ
                                                                             aオプション)
(10)すべてのアーカイブログファイルが正常に登録されたことを確認      ―――― rdblogコマンド
    します。
    スケーラブルログ運用ではない場合                                        (Vオプションかつ
                                                                             aオプション)
    スケーラブルログ運用の場合                                              (Vオプションかつ
                                                                             aオプションかつ
                                                                             gオプション)
(11)テンポラリログファイルを再作成します。                          ―――― rdblogコマンド
    スケーラブルログ運用ではない場合                                        (Gオプションかつ
                                                                             tオプションかつ
                                                                             rオプション)
    スケーラブルログ運用の場合                                              (Gオプションかつ
                                                                             tオプションかつ
                                                                             rオプションかつ
                                                                             gオプション)
(12)テンポラリログファイルが正常に作成されたことを確認します。      ―――― rdblogコマンド
    スケーラブルログ運用ではない場合                                        (Vオプションかつ
                                                                             tオプション)
    スケーラブルログ運用の場合                                              (Vオプションかつ
                                                                             tオプションかつ
                                                                             gオプション)
    RDBディクショナリ、または、RDBディレクトリファイルも
    破壊されている場合                                            ⇒ (14)
(13)アーカイブログファイルを使用してデータベースをリカバリします。  ―――― rdbadjrcvコマンド
    ユーザロググループの場合                                              (gオプション)
    rdbadjrcvコマンドによって、RDBディクショナリがリカバリ
    できなかった場合                                              ⇒(14)
    rdbadjrcvコマンドによって、RDBディクショナリがリカバリ
    できた場合                                                    ⇒(17)
(14)rdbrcvdicコマンドのFWモードでRDBディクショナリとRDB            ―――― rdbrcvdicコマンド
    ディレクトリファイルをリカバリします。                                  (Fオプションかつ
    RDBディクショナリとRDBディレクトリファイルのリカバリは、                  ddlオプション)
    インクリメンタルリカバリによるリカバリを推奨します。
    スケーラブルディレクトリ運用を行っていない場合                ⇒(17)
    スケーラブルディレクトリ運用を行っている場合                  ⇒(15)
(15)すべてのユーザロググループ用のRDBディレクトリファイルを       ―――― rdbscldirコマンド
    再登録します。                                                        (Aオプションかつ
                                                                           gオプション)
(16)ユーザロググループ用のRDBディレクトリファイル情報を確認       ―――― rdbscldirコマンド
    します。
    リカバリしたユーザロググループ用のRDBディレクトリファイル以外          (Vオプション)
    にアクセス禁止状態のユーザロググループ用のRDBディレクトリ
    ファイルが存在していた場合は、
    “6.2.4 ユーザロググループ用のRDBディレクトリファイルのリカバリ”
    の(6)と(7)の手順を実施します。
(17)Symfoware/RDBを起動します。(動作確認)                          ―――― rdbstartコマンド
    ホットスタンバイ機能かつ(14)を実行している場合                 ⇒(18)
    ホットスタンバイ機能かつ(14)を実行していない場合、
    またはスタンバイ機能の場合                                     ⇒(19)
(18)ホットスタンバイの宣言をします。                                ―――― rdbhsutyコマンド
    (RDBディレクトリファイルをリカバリするとホットスタンバイの              (monオプションかつ
    使用で宣言した情報が初期化されるため、ホットスタンバイ                   fオプション)
    の使用を再宣言する必要があります。RDBディレクトリファイル
    をリカバリする前と同じ内容を再宣言します。)
(19)Symfoware/RDBを停止します。(動作確認)                           ―――― rdbstopコマンド
(20)GDSリソースを非活性にします。
    GDSリソースの非活性化手順は、“3.4.15 GDSリソースの非活性”を
    参照してください。
(21)運用系および待機系のクラスタアプリケーションの保守停止を解除します。
    クラスタアプリケーションの保守停止解除の手順は、
    “5.7 クラスタアプリケーションの保守停止のための解除”を
    参照してください。
(22)「片側運用」のときは待機系のクラスタアプリケーションを起動します。 ―――― Cluster Admin
(23)rdbadjrcvコマンドでリカバリできなかった資源をアクセス禁止        ―――― rdbinhコマンド
    状態にし、リカバリします。                                               (iオプション)
    (13)のrdbadjrcvコマンドを実施していないか、
    RDBディクショナリがリカバリできなかった場合は、すべての資源(DSI)を
    アクセス禁止状態にし、リカバリします。
    (rdbadjrcvコマンドでリカバリできなかった資源(DSI)は、            ―――― rdbrcvコマンド
    rdbadjrcvコマンドコマンドの実行時にメッセージで出力されます。            (Fオプション)
    このメッセージで出力された資源(DSI)をrdbinhコマンドにより
    アクセス禁止状態にした後、rdbrcvコマンドのFWモードでリカバリ
    します。)
(24)rdbadjrcvコマンドでリカバリできなかった資源の退避データを取得します。―――― rdbdmpコマンド
    ((23)でrdbrcvコマンドのFWモードでリカバリした資源(DSI)の
    退避データを取得します。)
    (13)のrdbadjrcvコマンドを実施していないか、
    RDBディクショナリがリカバリできなかった場合は、すべての表の
    DSIの退避データを取得します。
    RDBディクショナリのリカバリを行った場合は、RDBディクショナリの   ―――― rdbdmpdicコマンド
    退避データも取得します。

備考. スケーラブルログ運用の場合、(9)以降の操作は該当するロググループを対象にして作業を実施します。

注意

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

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

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