Replication Manager Application Agent CLI ユーザーズガイド

[目次][索引][前へ][次へ]


6.2.4 SQL Serverデータベースを正ボリュームにリストアする

副ボリューム上にバックアップデータが保存されている場合に,SQL Serverデータベースをリカバリーする例について説明します。この例では,副ボリュームと正ボリュームを再同期することでリストアします。オペレーションIDとして,「Operation_A」を使用します。

この項の構成
(1) SQL Serverデータベースをリストアする
(2) drmsqlrecoverコマンドでSQL Serverデータベースをリカバリーする
(3) drmsqlrecovertoolダイアログボックスでSQL Serverデータベースをリカバリーする

(1) SQL Serverデータベースをリストアする

SQL Serverデータベースをリストアするには:

  1. バックアップデータのバックアップIDを確認します。
    リストアに使用するバックアップデータのバックアップIDを確認します。バックアップIDを確認するには,データベースサーバーでdrmsqlcatコマンドを実行します。ここでは,SQL Serverのインスタンス名として既定のインスタンス(default)を使用します。
    DBServer >drmsqlcat default
    なお,リストアコマンド実行時に-targetオプションを指定して,特定のデータベースを含むインスタンス単位でリストアする場合には,リストア対象を確認してください。
  2. バックアップID記録ファイルを作成します。
    バックアップID記録ファイルは,EX_DRM_SQL_RESTOREでリストアする際に必要なファイルです。バックアップIDを指定してEX_DRM_BACKUPID_SETを実行し,バックアップID記録ファイルを作成します。
    DBServer > EX_DRM_BACKUPID_SET Operation_A -backup_id 0000000001
  3. 副ボリュームのデータを正ボリュームへリストアします。
    正ボリュームと副ボリュームを再同期することでリストアします。リストアするには,データベースサーバーでEX_DRM_SQL_RESTOREを実行します。
    DBServer > EX_DRM_SQL_RESTORE Operation_A -resync
    EX_DRM_SQL_RESTORE-undoオプションを指定して実行すると,データベースをスタンバイ状態(読み取り専用で使用できる状態)でリストアします。-undoオプションを省略したときは,リストアしたあとに,データベースはローディング状態となり,参照できません。なお,-undoオプションは,drmsqlinitコマンドでUNDOファイル格納ディレクトリーが設定されていない場合は使用できません。
    また,EX_DRM_SQL_RESTOREを実行するときは,SQL Serverに接続しないでください。
  4. SQL Serverデータベースをリカバリーします。
    SQL Serverデータベースをリカバリーします。リカバリーするにはデータベースサーバーでdrmsqlrecoverコマンドまたはdrmsqlrecovertoolコマンドを実行します。
    drmsqlrecoverコマンドおよびdrmsqlrecovertoolダイアログボックスの使用例を以降に示します。drmsqlrecoverコマンドおよびdrmsqlrecovertoolダイアログボックスの詳細については,マニュアル「Hitachi Command Suite Replication Manager Application Agent CLI リファレンスガイド」のdrmsqlrecoverコマンドまたはdrmsqlrecovertoolコマンドの説明を参照してください。

(2) drmsqlrecoverコマンドでSQL Serverデータベースをリカバリーする

リカバリーしたいデータベースが確定しているときや,複数ボリュームを同時にリカバリーするときなどは,drmsqlrecoverコマンドを使うと便利です。

  1. インスタンス名を指定してdrmsqlrecoverコマンドを実行します。
    drmsqlrecoverコマンドでリカバリーする場合:
    DBServer > drmsqlrecover default
    インスタンス名を指定してdrmsqlrecoverコマンドを実行すると,データベースはフルアクセスできる状態となり,リカバリーが完了します。
    drmsqlrecoverコマンドに-undoオプションを指定して実行すると,データベースをスタンバイ状態(読み取り専用で使用できる状態)でリカバリーします。-loadingオプションを指定して実行すると,データベースはローディング状態(読み込み中の状態)になり,アクセスできなくなります。-undoオプションは,drmsqlinitコマンドでUNDOファイル格納ディレクトリーが設定されていない場合は使用できません。

(3) drmsqlrecovertoolダイアログボックスでSQL Serverデータベースをリカバリーする

リカバリーするデータベースの状態を確認しながらリカバリーしたいときは,drmsqlrecovertoolダイアログボックスを使うと便利です。

drmsqlrecovertoolダイアログボックスでリカバリーするには:

  1. インスタンス名を指定してdrmsqlrecovertoolコマンドを実行します。
    DBServer > drmsqlrecovertool default
    コマンドを実行すると,drmsqlrecovertoolダイアログボックスが表示されます。
    [図]
  2. [Target database]からリカバリー先データベースを選択します。
  3. リカバリー後のデータベースの状態を選択します。
    [Recovery mode]で,リカバリー後のデータベースの状態を選択します。
    [Loading]:ローディング状態(読み込み中の状態)でリカバリーする場合に選択します。
    [Standby]:スタンバイ状態(読み取り専用で使用できる状態)でリカバリーする場合に選択します。なお,[Standby]は,drmsqlinitコマンドでUNDOファイル格納ディレクトリーが設定されていない場合は選択できません。
    [Online]:データベースにフルアクセスできるようにする場合に選択します。
  4. ロールフォワードするかどうかを選択します。
    トランザクションログを適用する(ロールフォワードする)場合には,[Roll forward?]に[Yes]を選択します。[Transaction log backup list]にトランザクションログを表示していない場合は,[Roll forward?]が[Yes]であっても[No]であってもかまいません。
  5. [Recovery]ボタンをクリックします。
    [Recovery mode]に[Online]を選択したときは,[Target database]に表示されるファイル名に「*」が付加され,リカバリーが完了します。