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

11.2.3 RDBディレクトリファイルのリカバリ

ユーザデータベース用のRDBディレクトリファイルとRDBディクショナリ用のRDBディレクトリファイルを同時にリカバリする場合は、リカバリ時の運用状態により、rdbrcvdicコマンドのOverwriteモードまたはLOADモードでリカバリします。

参照

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

11.2.3.1 Symfoware/RDB運用中のリカバリ

Symfoware/RDB運用中にリカバリする場合は、rdbrcvdicコマンドのOverwriteモードでリカバリします。

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

リカバリ操作の手順

DIR_FILE1: ユーザデータベース用のRDBディレクトリファイル

DIR_FILE2: RDBディクショナリ用のRDBディレクトリファイル

      RDBDICONBUFFERの指定によるフォールバック運用の場合   → (1)へ
      rdbpldicコマンドによるフォールバック運用の場合       → (2)へ
      メモリ常駐化を行わないフォールバック運用の場合       → (2)へ
(1) RDB構成パラメタファイルに“RDBDICONBUFFER=YES”を設定します。 
(2) Symfoware/RDBを起動します。                        ――― rdbstartコマンド
(3) データベースを定義します。                         ――― rdbddlexコマンド
      RDBDICONBUFFERの指定によるフォールバック運用の場合   → (5)へ
      rdbpldicコマンドによるフォールバック運用の場合       → (4)へ
      メモリ常駐化を行わないフォールバック運用の場合       → (5)へ
(4) RDBディクショナリの情報をメモリに展開します。      ――― rdbpldicコマンド
                                                              (Fオプションかつ
                                                               Uオプション)
(5) 目的業務を実行します。 

              ★ 障害発生 

(6) RDBディレクトリファイルをSymfoware/RDBから切り離し ――― rdbexdirコマンド
  ます。                                                      (mdetachオプションかつ
                                                               uオプション
                                                               またはsオプション)
(7) 媒体障害の場合は、障害ボリュームを取り換えます。   ――― CE作業
(8) ボリュームを取り換えた場合は、ボリュームの構成     ―――【RHEL-AS4の場合】
  情報をリカバリします。                                       partedコマンドかつ
                                                               rawコマンド
                                                             【RHEL5またはRHEL6の場合】
                                                               partedコマンド
(9) 切り離したRDBディレクトリファイルを接続します。    ――― rdbexdirコマンド 
                                                              (mattachオプションかつ
                                                               uオプション
                                                               またはsオプション)
(10) ユーザデータベース用のRDBディレクトリファイル     ――― rdbrcvdicコマンド 
   およびRDBディクショナリ用のRDBディレクトリファイルを       (Overwriteモード)
   リカバリします。 
       スケーラブルディレクトリ運用を行っている場合   → (11)へ 
(11) すべてのユーザロググループ用のRDBディレクトリファ ――― rdbscldirコマンド 
   イルの状態を確認します。                                   (Vオプション)
       状態(Status)が“inhibit”の場合は、
       “11.2.5.1 Symfoware/RDB運用中のリカバリ”の(10)と(11)を実行してください。 
リカバリ操作例

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

  • rdbpldicコマンドによるフォールバック運用を行っている

  • スケーラブルディレクトリ運用を行っている

    $ rdbstart 
    
    $ rdbddlex -d 在庫管理DB /rdb/ddl.dat 
    
    $ rdbpldic -F -U -d 在庫管理DB -T
    
    目的業務の実行 
    
    rdb: ERROR:qdg03420u: RDBIIディレクトリファイルをアクセス禁止状態にします 
         原因コード='1' 調査コード='1 2 0 5' (システム名=rdbsys1) 
    
    $ rdbexdir -mdetach -u
    
    $ rdbexdir -mdetach -s
    
    CE作業 … 媒体障害の場合は、障害ボリュームの交換およびボリューム構成情報のリカバリ
    
    $ rdbexdir -mattach -u
    
    $ rdbexdir -mattach -s
    
    $ rdbrcvdic -O 
    
    rdb: INFO:qdg02654i: rdbrcvdicコマンドの処理を開始します (システム名=rdbsys1)
         :
    rdb: INFO:qdg02655i: rdbrcvdicコマンドの処理が正常終了しました 
         (システム名=rdbsys1) 
    
    $ rdbscldir -V 
    
    RDBII rdbscldir DATE:2007/04/14 TIME:10/20/30 
    LogGroup  Status  DBspace  Size(Used rate)  Directory file path 
    system    normal  Exist      2048K(12%)     /home/rdbdir/DIR_FILE1 
    grp1      normal  Exist      1024K(23%)     /home/grp1/DIR_FILE_G1 

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

Symfoware/RDB停止中にリカバリする場合は、rdbrcvdicコマンドのLOADモードでリカバリします。

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

リカバリ操作の手順

DIR_FILE1: ユーザデータベース用のRDBディレクトリファイル

DIR_FILE2: RDBディクショナリ用のRDBディレクトリファイル

(1) Symfoware/RDBを起動します。                          ――― rdbstartコマンド
(2) データベースを定義します。                           ――― rdbddlexコマンド 
(3) 目的業務を実行します。 

              ★ 障害発生 

(4) Symfoware/RDBを停止します。                          ――― rdbstopコマンド 
(5) 媒体障害の場合は、障害ボリュームを取り換えます。     ――― CE作業 
(6) ボリュームを取り換えた場合は、ボリュームの構成情報をリカバリします。
                                                         ―――【RHEL-AS4の場合】
                                                                 partedコマンドかつ
                                                                 rawコマンド
                                                               【RHEL5またはRHEL6の場合】
                                                                 partedコマンド
(7) ユーザデータベース用のRDBディレクトリファイルおよび  ――― rdbrcvdicコマンド
  RDBディクショナリ用のRDBディレクトリファイルをリカバリ        (LOADモード)
  します。
      スケーラブルディレクトリ運用を行っていない場合         → (10)へ 
      スケーラブルディレクトリ運用を行っている場合           → (8)へ 
(8) すべてのユーザロググループ用のRDBディレクトリファ    ――― rdbscldirコマンド 
  イルを再登録します。                                          (Aオプションかつ
                                                                 gオプション) 
(9) すべてのユーザロググループ用のRDBディレクトリファ    ――― rdbscldirコマンド 
  イルが正常に登録されたことを確認します。                      (Vオプション) 
      状態(Status)が“inhibit”の場合は、
      “11.2.5.2 Symfoware/RDB停止中のリカバリ”(7)と(8)を実行してください。 
(10) Symfoware/RDBを起動します。                         ――― rdbstartコマンド 
リカバリ操作例

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

  • スケーラブルディレクトリ運用を行っている

    $ rdbstart 
    
    $ rdbddlex -d 在庫管理DB /rdb/ddl.dat 
    
    目的業務の実行 
    
    rdb: ERROR:qdg03420u: RDBIIディレクトリファイルをアクセス禁止状態にします 
         原因コード='1' 調査コード='1 2 0 5' (システム名=rdbsys1) 
    
    $ rdbstop 
    
    CE作業 … 媒体障害の場合は、障害ボリュームの交換およびボリューム構成情報のリカバリ
    
    $ rdbrcvdic -L -r /dev/raw/raw5 -du 1M 
    
    rdb: INFO:qdg02654i: rdbrcvdicコマンドの処理を開始します (システム名=rdbsys1)
         :
    rdb: INFO:qdg02655i: rdbrcvdic コマンドの処理が正常終了しました (システム名=rdbsys1)
    
    $ rdbscldir -A -g grp1 /home/grp1/DIR_FILE_G1 
    
    $ rdbscldir -V 
    
    RDBII rdbscldir DATE:2007/04/14 TIME:10/20/30 
    LogGroup  Status  DBspace  Size(Used rate)  Directory file path 
    system    normal  Exist       2048K(12%)    /home/rdbdir/DIR_FILE1 
    grp1      normal  Exist       1024K(23%)    /home/grp1/DIR_FILE_G1 
    
    $ rdbstart