ExpressMaint およびWindowsスケジュールタスクを使用して、一部のMS SQL Server 2008 R2 Expressデータベースの毎週の完全バックアップと毎日の差分バックアップを作成しています
毎週の満腹
expressmaint -S (local)\SQLExpress -D ALL -T DB -R D:\Backup\Reports -RU WEEKS -RV 1 -B D:\Backup\Data -BU WEEKS -BV 4 -V -C
毎日の差分
expressmain -S (local)\SQLExpress -D ALL -T DIF -R D:\Backup\Reports -RU WEEKS -RV 1 -B D:\Backup\Data -BU days -BV 7 -V -C
これらを特定の時点に復元するときは、各バックアップを個別に復元する必要があります。正しい順序で再生される一連のバックアップを単一の復元にチェーンする方法はありますか?
これを試すとエラーが出ます
Transact-SQLステートメントまたはバッチの実行中に例外が発生しました。 (Microsoft.SqlServer.ConnectionInfo)
追加情報:
「C:\ Foo\Bar_FullBackup_20110130_2346.bak」にロードされたメディアは、1つのメディアファミリをサポートするようにフォーマットされていますが、バックアップデバイスの仕様によれば、2つのメディアファミリが必要です。 RESTORE HEADERONLYが異常終了しています。 (Microsoft SQL Server、エラー:3231)
ヘルプが必要な場合は、次をクリックしてください http://go.Microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=10.50.1600&EvtSrc=MSSQLServer&EvtID=3231&LinkId=20476
編集
データベースを右クリックしたときに、タスクメニューから復元ダイアログを使用しています。そこから、「デバイスから復元」を選択し、復元したい.bakファイルを追加します。
1つの.bakファイルのみを追加する場合は問題ありません。複数のファイルを追加する場合は、上記のエラーが発生します。
SSMSを使用すると、1回の操作でバックアップの復元を連鎖させることはできません。複数の復元を実行する必要があります。より効率的にするには、T-SQLを使用する必要があります。
--Restore the most recent full backup
RESTORE DATABASE <mydb>
FROM DISK = 'Path to full backup'
WITH NORECOVERY, STATS=10 --If only restoring the full, change to RECOVERY
--Restore the most recent diff backup
RESTORE DATABASE <mydb>
FROM DISK = 'Path to diff backup'
WITH RECOVERY, STATS=10
RESTOREの詳細: http://msdn.Microsoft.com/en-us/library/ms186858.aspx
-最新の完全バックアップを復元します。
RESTORE DATABASE <DATABASE NAME>
FROM DISK = <Path to full backup>
WITH NO RECOVERY
-最新の差分バックアップを復元します
RESTORE DATABASE <DATABASE NAME>
FROM DISK = <Path to differential backup>
WITH NORECOVERY
-最新の差分バックアップ後に作成されたすべてのトランザクションログバックアップを復元します。
RESTORE DATABASE <DATABASE NAME>
FROM DISK = <Path to first transactional log backup>
WITH NORECOVERY
。 。 。 。 。
RESTORE DATABASE <DATABASE NAME>
FROM DISK = <Path to last transactional log backup>
WITH RECOVERY
デバイスから復元しようとしていますが、本当にしたいことは、SSMSで「データベースから」オプションを指定することです。 GUIで使用可能なバックアップファイルが表示され、フルファイルと差分ファイルを選択できます。