SQL Serverデータベースのバックライトのリストア
SnapCenterを使用して、バックアップされたSQL Serverデータベースをリストアすることができます。データベース リストアは段階的に実施され、すべてのデータとログ ページが指定したSQL Serverバックアップから指定したデータベースにコピーされます。
-
バックアップされたSQL Serverデータベースを、バックアップが作成されたホスト上の別のSQL Serverインスタンスにリストアすることができます。
本番バージョンを上書きしてしまわないように、SnapCenterではバックアップされたSQL Serverデータベースを別のパスにリストアすることができます。
-
SnapCenterでは、WindowsクラスタのデータベースをSQL Serverクラスタ グループをオフラインにすることなくリストアできます。
-
リストア処理中に、リソースを所有するノードがダウンするなどのクラスタ障害(クラスタ グループの移動処理)が発生した場合は、SQL Serverインスタンスに再接続してからリストア処理を再開する必要があります。
-
ユーザまたはSQL Server Agentジョブがアクセス中のデータベースはリストアできません。
-
システム データベースは別のパスにリストアできません。
-
SCRIPTS_PATHは、プラグイン ホストのSMCoreServiceHost.exe.ConfigファイルにあるPredefinedWindowsScriptsDirectoryキーを使用して定義します。
必要に応じて、このパスを変更してSMcoreサービスを再起動できます。セキュリティを確保するために、デフォルトのパスを使用することを推奨します。
キーの値は、API を介して Swagger から表示できます: API /4.7/configsettings
GET APIを使用すると、キーの値を表示できます。SET APIはサポートされません。
-
[Restore]ウィザードの各ページのフィールドのほとんどはわかりやすいもので、説明を必要としません。以下の手順では、説明が必要なフィールドを取り上げます。
-
SnapMirrorアクティブ同期でリストア処理を実行するには、プライマリの場所からバックアップを選択する必要があります。
-
SnapLockが有効なポリシーの場合、ONTAP 9.12.1以前のバージョンでは、Snapshotのロック期間を指定すると、リストアの一環として改ざん防止Snapshotから作成されたクローンにSnapLockの有効期限が継承されます。SnapLockの有効期限が過ぎたあと、ストレージ管理者がクローンを手動でクリーンアップする必要があります。
-
左側のナビゲーション ペインで [リソース] をクリックし、リストから適切なプラグインを選択します。
-
[リソース] ページで、[表示] リストから [データベース] または [リソース グループ] を選択します。
-
リストからデータベースまたはリソース グループを選択します。
トポロジ ページが表示されます。
-
[コピーの管理] ビューで、ストレージ システムから [バックアップ] を選択します。
-
表からバックアップを選択し、
アイコン。
-
[Restore Scope]ページで、次のいずれかのオプションを選択します。
オプション 説明 バックアップが作成されたホストにデータベースをリストア
バックアップが作成されたのと同じSQL Serverにデータベースをリストアする場合は、このオプションを選択します。
別のホストにデータベースをリストア
バックアップが作成されたホストまたは別のホスト内にある別のSQL Serverにデータベースをリストアする場合は、このオプションを選択します。
ホスト名を選択し、データベース名を入力し(オプション)、インスタンスを選択し、リストア パスを指定します。
代替パスに指定するファイル拡張子は、元のデータベース ファイルのファイル拡張子と同じにする必要があります。 「復元スコープ」ページに「データベースを別のホストに復元する」オプションが表示されない場合は、ブラウザのキャッシュをクリアします。
既存のデータベース ファイルを使用してデータベースをリストア
バックアップが作成されたホストまたは別のホスト内にある代替SQL Serverにデータベースをリストアする場合は、このオプションを選択します。
指定した既存のファイル パスにデータベース ファイルが存在している必要があります。ホスト名を選択し、データベース名を入力し(オプション)、インスタンスを選択し、リストア パスを指定します。
-
[Recovery Scope]ページで、次のいずれかのオプションを選択します。
オプション 説明 None
ログなしで完全バックアップのみを復元する必要がある場合は、「なし」を選択します。
All log backups
完全バックアップ後に利用可能なすべてのログ バックアップを復元するには、すべてのログ バックアップ 最新バックアップ復元操作を選択します。
By log backups until
ログ バックアップ別 を選択すると、ポイントインタイム復元操作が実行され、選択した日付のバックアップ ログまでのバックアップ ログに基づいてデータベースが復元されます。
By specific date until
復元されたデータベースにトランザクション ログが適用されなくなる日時を指定するには、[特定の日付まで] を選択します。
ポイントインタイム リストア処理では、指定した日時以降に記録されたトランザクション ログ エントリがリストアされません。
Use custom log directory
すべてのログ バックアップ、ログ バックアップ別、または*特定の日付まで*を選択し、ログがカスタムの場所に配置されている場合は、*カスタム ログ ディレクトリを使用する*を選択し、ログの場所を指定します。
カスタム ログ ディレクトリを使用する オプションは、データベースを別のホストに復元する または 既存のデータベース ファイルを使用してデータベースを復元する を選択した場合にのみ使用できます。共有パスを使用することもできますが、そのパスにSQLユーザがアクセスできるようにしてください。
カスタム ログ ディレクトリは、可用性グループ データベースではサポートされていません。 -
[Pre Ops]ページで、次の手順を実行します。
-
[Pre Restore Options]ページで、次のいずれかのオプションを選択します。
-
同じ名前のデータベースを復元するには、「復元中に同じ名前のデータベースを上書きする」を選択します。
-
データベースを復元し、既存のレプリケーション設定を保持するには、「SQL データベースのレプリケーション設定を保持する」を選択します。
-
復元操作を開始する前にトランザクション ログを作成するには、[復元前にトランザクション ログのバックアップを作成する] を選択します。
-
トランザクション ログ バックアップが失敗した場合に復元操作を中止するには、[復元前のトランザクション ログ バックアップが失敗した場合は復元を中止する] を選択します。
-
-
リストア ジョブの実行前に実行するオプションのスクリプトを指定します。
たとえば、SNMPトラップの更新、アラートの自動化、ログの送信などをスクリプトで実行できます。
プリスクリプトやポストスクリプトのパスに、ドライブや共有を含めることはできません。パスは、SCRIPTS_PATHの相対パスである必要があります。 -
-
[Post Ops]ページで、次の手順を実行します。
-
[Choose database state after restore completes]セクションで、次のいずれかのオプションを選択します。
-
必要なバックアップをすべて今すぐ復元する場合は、「操作可能、ただし追加のトランザクション ログの復元には使用できません」を選択します。
これはデフォルトの動作で、コミットされていないトランザクションをロールバックしてデータベースを使用可能な状態にします。バックアップを作成するまで追加のトランザクション ログはリストアできません。
-
コミットされていないトランザクションをロールバックせずにデータベースを非操作状態のままにするには、「非操作状態ですが、追加のトランザクション ログの復元に使用できます」を選択します。
追加のトランザクション ログをリストアできます。データベースはリカバリされるまで使用できません。
-
データベースを読み取り専用モードのままにするには、「追加のトランザクション ログを復元できる読み取り専用モード」を選択します。
コミットされていないトランザクションはロールバックされますが、ロールバックされた操作がスタンバイ ファイルに保存されるため、リカバリ前の状態に戻すことができます。
[Undo directory]オプションを有効にすると、トランザクション ログが追加でリストアされます。トランザクション ログのリストア処理が失敗した場合は、変更をロールバックすることができます。詳細については、SQL Serverのドキュメントを参照してください。
-
-
リストア ジョブの実行後に実行するオプションのスクリプトを指定します。
たとえば、SNMPトラップの更新、アラートの自動化、ログの送信などをスクリプトで実行できます。
プリスクリプトやポストスクリプトのパスに、ドライブや共有を含めることはできません。パスは、SCRIPTS_PATHの相対パスである必要があります。 -
-
通知ページの 電子メール設定 ドロップダウン リストから、電子メールを送信するシナリオを選択します。
また、送信者と受信者のEメール アドレス、およびEメールの件名を指定する必要があります。
-
概要を確認し、[完了] をクリックします。
-
モニター > ジョブ ページを使用して復元プロセスを監視します。
-
Open-SmConnectionコマンドレットを使用して、指定のユーザでSnapCenter Serverとの接続セッションを開始します。
PS C:\> Open-Smconnection
-
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
-
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 :
コマンドレットで使用できるパラメータとその説明に関する情報は、Get-Help command_name を実行すると取得できます。あるいは、 "SnapCenterソフトウェア コマンドレット リファレンス ガイド" 。