Skip to main content
日本語は機械翻訳による参考訳です。内容に矛盾や不一致があった場合には、英語の内容が優先されます。

SQL Serverデータベースバックアップのリストア

共同作成者

SnapCenter を使用して、バックアップされた SQL Server データベースをリストアできます。データベースリストアは複数の段階からなるプロセスで、指定したSQL Serverバックアップのすべてのデータページとログページが指定したデータベースにコピーされます。

タスクの内容
  • バックアップしたSQL Serverデータベースは、バックアップが作成されたホスト上の別のSQL Serverインスタンスにリストアできます。

    本番バージョンを置き換えないように、 SnapCenter を使用して、バックアップされた SQL Server データベースを別のパスにリストアすることができます。

  • SnapCenter では、 SQL Server クラスタグループをオフラインにすることなく、 Windows クラスタ内のデータベースをリストアできます。

  • リストア処理中にクラスタ障害(クラスタグループの移動処理)が発生した場合(リソースを所有するノードがダウンした場合など)は、SQL Serverインスタンスに再接続してからリストア処理を再開する必要があります。

  • ユーザまたはSQL Server Agentジョブがデータベースにアクセスしている間は、データベースをリストアできません。

  • システムデータベースは別のパスにリストアできません。

  • scripts_pathは、プラグインホストのSMCoreServiceHost.exe.ConfigファイルにあるPredefinedWindowsScriptsDirectoryキーを使用して定義します。

    必要に応じて、このパスを変更してSMcoreサービスを再起動できます。セキュリティを確保するために、デフォルトのパスを使用することを推奨します。

    キーの値は、api/4.7/configsettingsを介してスワッガーから表示できます

    GET APIを使用すると、キーの値を表示できます。Set APIはサポートされていません。

  • リストアウィザードの各ページのフィールドのほとんどはわかりやすいもので、説明を必要としません。以下の手順では、説明が必要なフィールドを取り上げます。

  • SnapMirrorのアクティブな同期のリストア処理では、プライマリの場所からバックアップを選択する必要があります。

  • SnapLockが有効なポリシーの場合、ONTAP 9.12.1以前のバージョンでは、Snapshotロック期間を指定すると、リストアの一環として改ざん防止Snapshotから作成されたクローンにSnapLockの有効期限が継承されます。SnapLockの有効期限が過ぎた時点で、ストレージ管理者がクローンを手動でクリーンアップする必要があります。

SnapCenter UI
手順
  1. 左側のナビゲーションペインで、 * リソース * をクリックし、リストから適切なプラグインを選択します。

  2. [ リソース ] ページで、 [ * 表示 ] リストから [ * データベース * ] または [ * リソースグループ * ] を選択します。

  3. リストからデータベースまたはリソースグループを選択します。

    トポロジページが表示されます。

  4. [ コピーの管理 ] ビューで、ストレージ・システムから [ * バックアップ * ] を選択します。

  5. 表からバックアップを選択し、アイコンをクリックします リストアアイコン

    リソースのリストア
  6. [Restore Scope]ページで、次のいずれかのオプションを選択します。

    オプション 説明

    バックアップが作成されたホストにデータベースをリストアする

    このオプションは、バックアップが作成されたSQL Serverにデータベースをリストアする場合に選択します。

    別のホストへのデータベースのリストア

    このオプションは、バックアップを作成するホストまたは別のホストにある別のSQL Serverにデータベースをリストアする場合に選択します。

    ホスト名を選択し、データベース名を指定し(オプション)、インスタンスを選択し、リストアパスを指定します。

    メモ 代替パスに指定するファイル拡張子は、元のデータベースファイルのファイル拡張子と同じである必要があります。

    [ リストア範囲 ] ページに [ データベースを別のホストにリストアする *] オプションが表示されない場合は、ブラウザキャッシュをクリアします。

    既存のデータベースファイルを使用したデータベースのリストア

    このオプションは、バックアップが作成されたホストと同じホストまたは別のホストの代替SQL Serverにデータベースをリストアする場合に選択します。

    指定した既存のファイルパスにデータベースファイルがすでに存在している必要があります。ホスト名を選択し、データベース名を指定し(オプション)、インスタンスを選択し、リストアパスを指定します。

  7. [Recovery Scope]ページで、次のいずれかのオプションを選択します。

    オプション 説明

    なし

    ログなしでフルバックアップのみをリストアする必要がある場合は、「 * なし」を選択します。

    すべてのログバックアップ

    フルバックアップ後に使用可能なすべてのログバックアップをリストアするには、「 * all log backups * up-to-the-minute backup restore operation 」を選択します。

    次のログバックアップまで:

    「ログバックアップによる * 」を選択してポイントインタイムリストア処理を実行します。この場合、選択した日付のバックアップログまで、バックアップログに基づいてデータベースがリストアされます。

    次の日付まで

    リストアされたデータベースにトランザクション・ログを適用しない日時を指定するには、 [ * までの特定の日付 ] を選択します。

    ポイントインタイムリストア処理では、指定した日時以降に記録されたトランザクションログエントリがリストアされません。

    カスタムログディレクトリを使用

    すべてのログ・バックアップ * 、ログ・バックアップ * 、または * を指定日までに * とログがカスタム・ロケーションにある場合は、 * カスタム・ログ・ディレクトリを使用 * を選択し、ログの場所を指定します。

    オプションは、[Restore the database to an alternate host]または[Restore the database using existing database files]*を選択した場合にのみ使用できます。共有パスを使用することもできますが、そのパスにSQLユーザがアクセスできることを確認してください。

    メモ カスタムログディレクトリは可用性グループデータベースではサポートされていません。
  8. [PreOps]ページで、次の手順を実行します。

    1. [PreRestore Options]ページで、次のいずれかのオプションを選択します。

      • [ リストア時に同じ名前でデータベースを上書きする ] を選択して、同じ名前でデータベースをリストアします。

      • データベースをリストアし、既存のレプリケーション設定を保持するには、「 * SQL データベースのレプリケーション設定を保持 * 」を選択します。

      • リストア処理を開始する前にトランザクションログバックアップを作成する場合は、「リストア前にトランザクションログバックアップを作成」を選択します。

      • トランザクションログのバックアップに失敗した場合は、「 * リストアの終了」を選択して、リストア処理を中止します。

    2. リストアジョブの実行前に実行するオプションのスクリプトを指定します。

      たとえば、SNMPトラップの更新、アラートの自動化、ログの送信などを行うスクリプトを実行できます。

    メモ プリスクリプトまたはポストスクリプトのパスにドライブまたは共有を含めることはできません。パスはscripts_pathからの相対パスである必要があります。
  9. [Post Ops]ページで、次の手順を実行します。

    1. [Choose database state after restore completes]セクションで、次のいずれかのオプションを選択します。

      • 必要なすべてのバックアップを今すぐリストアする場合は、「動作中ですが、追加のトランザクション・ログをリストアできません」を選択します。

        これはデフォルトの動作で、コミットされていないトランザクションをロールバックしてデータベースを使用可能な状態にします。バックアップを作成するまで、追加のトランザクションログはリストアできません。

      • [ 非運用時 ] を選択します。ただし、トランザクションログを追加でリストアすることができます。 * を選択すると、コミットされていないトランザクションをロールバックせずに、データベースが非運用状態のままになります。

        追加のトランザクションログをリストアできます。データベースはリカバリされるまで使用できません。

      • データベースを読み取り専用モードのままにするには、追加のトランザクションログのリストアに使用できる * 読み取り専用モードを選択します。

        このオプションはコミットされていないトランザクションを元に戻しますが、元に戻したアクションをスタンバイファイルに保存して、リカバリ効果を元に戻すことができます。

      [ ディレクトリを元に戻す ] オプションが有効になっている場合は、さらに多くのトランザクションログがリストアされます。トランザクションログのリストア処理が失敗した場合は、変更をロールバックできます。詳細については、SQL Serverのドキュメントを参照してください。

    2. リストアジョブの実行後に実行するオプションのスクリプトを指定します。

      たとえば、SNMPトラップの更新、アラートの自動化、ログの送信などを行うスクリプトを実行できます。

    メモ プリスクリプトまたはポストスクリプトのパスにドライブまたは共有を含めることはできません。パスはscripts_pathからの相対パスである必要があります。
  10. [ 通知 ] ページの [ 電子メールの設定 *] ドロップダウンリストから、電子メールを送信するシナリオを選択します。

    また、送信者と受信者のEメールアドレス、およびEメールの件名を指定する必要があります。

  11. 概要を確認し、 [ 完了 ] をクリックします。

  12. [ * Monitor * > * Jobs * ] ページを使用してリストア・プロセスを監視します。

PowerShellコマンドレット
手順
  1. Open-SmConnectionコマンドレットを使用して、指定したユーザのSnapCenterサーバとの接続セッションを開始します。

    PS C:\> Open-Smconnection
  2. Get-SmBackupおよびGet-SmBackupReportコマンドレットを使用して、リストアする1つ以上のバックアップに関する情報を取得します。

    次に、使用可能なすべてのバックアップに関する情報を表示する例を示します。

    PS C:\> Get-SmBackup
    
    BackupId                      BackupName                    BackupTime                    BackupType
    --------                      ----------                    ----------                    ----------
      1               Payroll Dataset_vise-f6_08... 8/4/2015    11:02:32 AM                 Full Backup
      2               Payroll Dataset_vise-f6_08... 8/4/2015    11:23:17 AM

    この例では、2015年1月29日から2015年2月3日までのバックアップに関する詳細情報を表示しています。

    PS C:\> Get-SmBackupReport -FromDateTime "1/29/2015" -ToDateTime "2/3/2015"
    
       SmBackupId           : 113
       SmJobId              : 2032
       StartDateTime        : 2/2/2015 6:57:03 AM
       EndDateTime          : 2/2/2015 6:57:11 AM
       Duration             : 00:00:07.3060000
       CreatedDateTime      : 2/2/2015 6:57:23 AM
       Status               : Completed
       ProtectionGroupName  : Clone
       SmProtectionGroupId  : 34
       PolicyName           : Vault
       SmPolicyId           : 18
       BackupName           : Clone_SCSPR0019366001_02-02-2015_06.57.08
       VerificationStatus   : NotVerified
    
       SmBackupId           : 114
       SmJobId              : 2183
       StartDateTime        : 2/2/2015 1:02:41 PM
       EndDateTime          : 2/2/2015 1:02:38 PM
       Duration             : -00:00:03.2300000
       CreatedDateTime      : 2/2/2015 1:02:53 PM
       Status               : Completed
       ProtectionGroupName  : Clone
       SmProtectionGroupId  : 34
       PolicyName           : Vault
       SmPolicyId           : 18
       BackupName           : Clone_SCSPR0019366001_02-02-2015_13.02.45
       VerificationStatus   : NotVerified
  3. Restore-SmBackupコマンドレットを使用して、バックアップからデータをリストアします。

    Restore-SmBackup -PluginCode 'DummyPlugin' -AppObjectId 'scc54.sccore.test.com\DummyPlugin\NTP\DB1' -BackupId 269 -Confirm:$false
    output:
    Name                : Restore 'scc54.sccore.test.com\DummyPlugin\NTP\DB1'
    Id                  : 2368
    StartTime           : 10/4/2016 11:22:02 PM
    EndTime             :
    IsCancellable       : False
    IsRestartable       : False
    IsCompleted         : False
    IsVisible           : True
    IsScheduled         : False
    PercentageCompleted : 0
    Description         :
    Status              : Queued
    Owner               :
    Error               :
    Priority            : None
    Tasks               : {}
    ParentJobID         : 0
    EventId             : 0
    JobTypeId           :
    ApisJobKey          :
    ObjectId            : 0
    PluginCode          : NONE
    PluginName          :

コマンドレットで使用できるパラメータとその説明については、 RUN_Get-Help コマンド NAME を実行して参照できます。または、を参照することもできます "SnapCenter ソフトウェアコマンドレットリファレンスガイド"