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

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


6.3.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を確認するには,バックアップサーバでdrmtapecatコマンドを実行します。
    BKServer >drmtapecat -hostname DBServer -l
    BACKUP-ID ORIGINAL-ID HOSTNAME BACKUP-OBJECT INSTANCE  SNAPSHOT TIME       EXPIRATION TIME   BACKUP-MEDIA
    0000000002 0000000001 DBServer MSSQL         instance1 2003/08/11 19:42:15 2003/11/11 19:42:15  MEDIA1
    :
    :
    なお,リストアコマンド実行時に-targetオプションを指定して,特定のデータベースを含むインスタンス単位でリストアする場合には,リストア対象を確認する必要があります。この場合,drmtapecatコマンドに次のオプションを指定して実行します。
    • -o MSSQL <インスタンス名>
    • -backup_id <バックアップID>
  2. バックアップしたデータをテープから副ボリュームへリストアします。
    リストアするには,バックアップサーバでEX_DRM_TAPE_RESTOREを実行します。バックアップ時に-mount_ptオプションでマウントポイントを指定している場合は,バックアップ時と同じマウントポイントを指定してください。バックアップ時に-mount_ptオプションの指定を省略している場合は,リストア時にも省略できます。
    BKServer > EX_DRM_TAPE_RESTORE Operation_A -backup_id 0000000002 -mount_pt E:
  3. バックアップ情報を一時ファイルへエクスポートします。
    副ボリュームから正ボリュームへリストアするには,テープから副ボリュームへのリストア操作に関するバックアップ情報を,データベースサーバにコピーする必要があります。EX_DRM_DB_EXPORTを実行し,バックアップ情報を拡張コマンド用一時フォルダの一時ファイルへエクスポートします。
    BKServer > EX_DRM_DB_EXPORT Operation_A
  4. リストア時に作成されたメタファイルを一時フォルダに退避します。
    メタファイルと一時ファイルを一括してデータベースサーバへ転送するために,リストア時に作成されたメタファイルをバックアップサーバの拡張コマンド用一時フォルダに退避します。退避するには,バックアップサーバでEX_DRM_SQLFILE_PACKを実行します。なお,drmsqlinitコマンドを実行したときに,VDIメタファイル格納ディレクトリを登録しなかった場合,このコマンドを実行する必要はありません。
    BKServer > EX_DRM_SQLFILE_PACK Operation_A
  5. メタファイルと一時ファイルをデータベースサーバで受け取ります。
    データベースサーバでEX_DRM_FTP_GETを実行し,バックアップサーバのメタファイルと一時ファイルを一括してデータベースサーバで受け取ります。ここでは,FTPサーバにログオンするために使用するユーザーIDを「admin」,パスワードを「password」とします。メタファイルと一時ファイルは,データベースサーバの拡張コマンド用一時フォルダに格納されます。
    DBServer > EX_DRM_FTP_GET Operation_A -server BKServer -user admin -password password
  6. バックアップサーバから転送した一時ファイルをデータベースサーバのバックアップカタログへインポートします。
    バックアップサーバから転送した一時ファイルを,データベースサーバのバックアップカタログへインポートします。一時ファイルをインポートするには,データベースサーバでEX_DRM_DB_IMPORTを実行します。
    DBServer >EX_DRM_DB_IMPORT Operation_A
  7. バックアップサーバから転送したメタファイルをデータベースサーバへ展開します。
    EX_DRM_SQLFILE_EXTRACTを実行し,バックアップサーバから転送したメタファイルをデータベースサーバに展開します。
    DBServer > EX_DRM_SQLFILE_EXTRACT Operation_A
  8. 副ボリュームのデータを正ボリュームへリストアします。
    正ボリュームと副ボリュームを再同期することでリストアします。リストアするには,データベースサーバでEX_DRM_SQL_RESTOREを実行します。
    DBServer > EX_DRM_SQL_RESTORE Operation_A -resync
    EX_DRM_SQL_RESTORE-undoオプションを指定して実行すると,データベースをスタンバイ状態(読み取り専用で使用できる状態)でリストアします。-undoオプションを省略したときは,リストアしたあとに,データベースはローディング状態となり,参照できません。
    また,EX_DRM_SQL_RESTOREを実行するときは,SQL Serverに接続しないでください。
  9. SQL Serverデータベースをリカバリします。
    SQL Serverデータベースをリカバリします。リカバリするにはデータベースサーバでdrmsqlrecoverコマンドまたはdrmsqlrecovertoolコマンドを実行します。

drmsqlrecoverコマンドおよびdrmsqlrecovertoolダイアログボックスの使用例を以降に示します。drmsqlrecoverコマンドおよびdrmsqlrecovertoolダイアログボックスの詳細については,マニュアル「Hitachi Command Suite Replication Manager Software Application Agent CLI リファレンスガイド」のdrmsqlrecoverコマンドまたはdrmsqlrecovertoolコマンドの説明を参照してください。

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

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

  1. インスタンス名を指定してdrmsqlrecoverコマンドを実行します。
    drmsqlrecoverコマンドでリカバリする場合:
    DBServer > drmsqlrecover default
    KAVX0001-I drmsqlrecoverコマンドを開始します。
    KAVX0002-I drmsqlrecoverコマンドを終了します。
    DBServer >
    インスタンス名を指定して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]に表示されるファイル名に「*」が付加され,リカバリが完了します。

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


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