Replication Manager Software Application Agent CLI リファレンスガイド

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


2.7.8 drmsqlrestore(バックアップしたSQL Serverデータベースを正ボリュームにリストアする)

書式

バックアップデータを再同期でリストアする場合

drmsqlrestore バックアップID
                -resync [ -force ] [ -undo ][ -nochk_host ]
              [ -instance SQL Serverインスタンス名 ]
              [ -target データベース名 | -f 一括定義ファイル名 ]
              [ -pf コピーパラメーター定義ファイル]

正ボリュームのデータにメタファイルだけを適用する場合

drmsqlrestore バックアップID
                -no_resync [ -undo ][ -nochk_host ]
              [ -instance SQL Serverインスタンス名 ]
              [ -target データベース名 | -f 一括定義ファイル名 ]

リモートサイトのバックアップデータを再同期でリストアする場合

drmsqlrestore バックアップID
                -resync [ -force ] [ -undo ][ -nochk_host ]
              [ -instance SQL Serverインスタンス名 ]
              [ -target データベース名 | -f 一括定義ファイル名 ]
              [ -template ]
              [ -pf コピーパラメーター定義ファイル]

リモートサイトの正ボリュームのデータにメタファイルだけを適用する場合

drmsqlrestore バックアップID
                -no_resync [ -undo ][ -nochk_host ]
              [ -instance SQL Serverインスタンス名 ]
              [ -target データベース名 | -f 一括定義ファイル名 ]
              [ -template ]

説明

バックアップIDで指定された副ボリュームのバックアップデータを,ディスクの再同期で正ボリュームにリストアします。リストアには,drmsqlbackupコマンドで作成したスナップショットのメタファイルが使用されます。

次に,ディスクの再同期でリストアするときのコマンドの動作を説明します。

  1. リストアされるデータベースがアタッチされていた場合,データベースがデタッチされます。
    データベースのデタッチに失敗した場合は,エラーメッセージが表示され,リストア処理はエラーになります。
  2. ディスクの再同期で副ボリュームから正ボリュームにバックアップデータがリストアされます。
  3. データベースがアタッチされます。
  4. インスタンスが起動されます。

次に,クラスタ環境でリストアするときのコマンドの動作を説明します。この場合,データベースを含むクラスタリソースがオフラインになるため,リストア対象のデータベースは一時的に使用できなくなります。

  1. リストアされるデータベースを含むクラスタリソースがオンラインの場合,データベースを含むリソースとディスクリソースがオフラインにされます。
    データベースを含むクラスタリソースやディスクリソースのオフラインに失敗した場合は,エラーメッセージが表示され,リストア処理はエラーになります。
  2. ディスクの再同期で副ボリュームから正ボリュームにバックアップデータがリストアされます。
  3. ディスクリソースがオンラインにされ,そのあとデータベースを含むクラスタリソースがオンラインになります。

Application Agentの構成定義ファイル(init.conf)でCLU_MSCS_RESTOREONLINEが設定されている場合,-resyncオプションを指定してユーザーデータベースをクラスタリソースがオンライン状態でリストアできます。この場合,リストア対象となるインスタンスを管理するクラスタリソースはオフラインになりません。ただし,リストア対象がシステムデータベース(master,model,msdb,distribution),またはシステムデータベースを含むデータベースの場合はオフラインになります。

正ボリューム上のデータは,バックアップ時点での副ボリュームのディスクイメージで上書きされます。したがって,バックアップ後に正ボリューム上に新規に作成したり,更新したりしたデータはすべて無効となります。

SQL Serverのシステムデータベース(master,model,msdb,distribution)をリストアする場合,システムデータベースを回復するためにリストア対象のSQL Serverのサービスを一度停止します。したがって,リストア対象データベースに一時的にアクセスできなくなります。リストア実行中はSQL Serverに接続しないでください。コマンド実行中にリストア対象のデータベースへ接続した場合,Application Agentの構成定義ファイル(init.conf)のパラメーター「プロセスの状態確認のリトライ回数とリトライ間隔」で設定した回数だけ,プロセスの状態確認を繰り返すことになります。この場合,繰り返しプロセスの状態確認が行われている間にユーザーの接続を切断すれば,コマンドは実行を継続します。

コマンドを実行してリストアする際,SQL Serverデータベースを構成するドライブ名がバックアップ時と異なる場合,コマンドがエラーになります。リストアする前に,drmsqlcatコマンドおよびSQL ServerのEnterprise Managerでリストア先のドライブ名が一致しているか確認してください。

バックアップ後に物理ディスクのパーティションスタイルが変更された場合に,コマンドを実行したときは次の表に示す動作になります。

表2-26 物理ディスクのパーティションスタイルとコマンド実行結果

バックアップ前 バックアップ後 リストアコマンド実行結果
正ボリューム 正ボリューム 副ボリューム コマンド状態
MBRディスク MBRディスク MBRディスク 正常終了
GPTディスク エラー(KAVX5171-E または KAVX5137-E)
再同期実施後※1
GPTディスク MBRディスク エラー(DRM-10337)
再同期実施前※2
GPTディスク エラー(DRM-10337)
再同期実施前※2
GPTディスク MBRディスク MBRディスク エラー(DRM-10337)
再同期実施前※2
GPTディスク エラー(DRM-10337)
再同期実施前※2
GPTディスク MBRディスク エラー(KAVX5171-E またはKAVX5137-E)
再同期実施後※1
GPTディスク 正常終了

注※1
再同期処理が実行されたあとに,エラーが表示されます。

注※2
再同期処理が実行される前に,エラーが表示されます。

引数

バックアップID

リストアするバックアップデータのバックアップIDを指定します。バックアップIDとは,バックアップデータを一意に識別するためのIDで,バックアップ時に,バックアップカタログに登録されます。バックアップIDを確認するにはdrmsqlcatコマンドを実行します。

-resync

正ボリュームと副ボリュームを再同期することでリストアします。正ボリュームの内容は,副ボリュームのバックアップデータと同じになります。

このオプションを指定してコマンドを実行する際,Windowsパフォーマンスレジストリを参照するプログラムのサービスを停止してください。

-force

正ボリュームと副ボリュームを強制的に再同期することで,リストアする場合に指定します。このオプションを指定すると,データベースサーバでバックアップを実行したときに取得した正ボリュームのコピーグループ名がデータベースサーバの情報と一致していれば,LDEV番号またはSERIAL番号がバックアップ時の番号と一致していない場合にも強制的に再同期します。このオプションは,ボリュームを入れ替えてLDEV番号が変わった場合など,-resyncオプションを指定しても再同期でリストアできないときにだけ指定してください。通常のリストアでこのオプションを指定した場合,データが破壊されるおそれがあります。

-undo

このオプションは,データベースをスタンバイモードとしてリストアする場合に指定します。このオプションを指定すると,リストアしたあとに,データベースは読み取り専用で使用できるようになります。drmsqlinitコマンドで登録したUNDOファイル格納ディレクトリにデータベースごとに一時ファイルを作成します。drmsqlinitコマンドでUNDOファイル格納ディレクトリが設定されていない場合は,「drmsqlinitコマンドでパラメーターが設定されていません」というエラーメッセージが表示されます。drmsqlinitコマンドでUNDOファイル格納ディレクトリを設定してください。

このオプションを省略した場合は,通常のリストアを実施します。この場合,リストアしたあと,ローディング状態になり,データベースは使用できなくなります。

-nochk_host

ホスト名に変更があった場合や,SQL Serverのログ配布機能を使用する場合など,drmsqlbackupコマンド実行時のホストとは異なるホストにリストアする際に指定します。

システムデータベース(master,model,msdb,distribution)をリストアする場合は,このオプションを使用できません。

注意事項
-nochk_hostオプションを指定した場合,リストアする際バックアップカタログでのホスト名の整合性チェックをしないため,間違ったホスト上でリストアしないように注意してください。

-instance SQL Serverインスタンス名

このオプションは,drmsqlbackupコマンドを実行したSQL Serverインスタンスとは異なるSQL Serverインスタンスへリストアする場合に指定します。SQL Serverインスタンス名に「DEFAULT」を指定した場合は,SQL Serverの既定インスタンスに接続します。ただし,リストア対象にシステムデータベース(master,model,msdb,distribution)が含まれている場合,このオプションは指定できません。

-target データベース名

指定したインスタンスに含まれる特定のデータベースをリストアする場合に指定します。指定するデータベースは,バックアップIDで指定したバックアップカタログの中に存在する必要があります。バックアップカタログの中に存在しないデータベースを指定した場合,そのデータベースに対するリストアは行われません。複数のデータベースを一度にリストアするときは,ファイル名またはディレクトリ名をコンマで区切って指定します。空白文字を含んだデータベース名を指定する場合,「"」で囲んで指定します。

このオプションおよび-fオプションの両方を省略した場合は,バックアップIDで指定したインスタンス全体をリストアします。

-f 一括定義ファイル名

このオプションは,-targetオプションと同様に,指定したインスタンスに含まれる特定のデータベースをリストアする場合に指定します。-targetオプションと異なり,リストアするデータベースの一覧を記述した定義ファイルをあらかじめ作成しておき,そのファイルの名称を指定することで,リストアするデータベースを一度に指定できます。一括定義ファイル名は絶対パスで指定します。空白文字を含んだ一括定義ファイル名を指定する場合,「"」で囲んで指定します。

このオプションおよび-targetオプションの両方を省略した場合は,バックアップIDで指定したインスタンスに含まれるすべてのオブジェクトをリストアします。

-no_resync

副ボリュームから正ボリュームへバックアップデータの回復処理をしないで,正ボリューム上のデータに対して,メタファイルだけ適用したい場合に指定します。ドライブが壊れてテープから直接正ボリュームにリストアする場合など,drmsqlrestoreコマンドでリストアできないときに使用します。

-template

drmsqlbackupに-templateオプションを指定して作成したバックアップカタログを使用してリストアする場合に指定します。-templateオプションで指定されたテンプレートカタログのSTART-TIMEおよびEND-TIMEは,テンプレートカタログの作成開始時間と終了時間となります。

-pf コピーパラメーター定義ファイル

コピーパラメーター定義ファイルに定義したリトライ回数とリトライ間隔を使用する場合に指定します。指定する場合は,パスではなくファイル名だけを指定してください。

このオプションを省略した場合は,RAID Manager用連携定義ファイル(DEFAULT.dat)の値が使用されます。コピーパラメーター定義ファイルに記述がされていないパラメーターについても,DEFAULT.datの値が使用されます。

コピーパラメーター定義ファイルは,次の場所に作成します。ファイル名は,64バイト以内の半角英数字で指定してください。

<Application Agentのインストール先>\DRM\conf\raid

注意事項

戻り値

0:正常終了した場合

0以外:エラーが発生した場合

使用例

[目次] [前へ] [次へ]


All Rights Reserved. Copyright© 2010, 2014, Hitachi, Ltd.