データベースをバックアップしました:
BACKUP DATABASE MyDatabase
TO DISK = 'MyDatabase.bak'
WITH INIT --overwrite existing
そして、それを復元しようとしました:
RESTORE DATABASE MyDatabase
FROM DISK = 'MyDatabase.bak'
WITH REPLACE --force restore over specified database
そして今、データベースは復元状態でスタックしています。
一部の人々は、バックアップにログ ファイルがなく、以下を使用してロール フォワードする必要があるためだと理論付けています。
RESTORE DATABASE MyDatabase
WITH RECOVERY
もちろん、失敗することを除いて:
Msg 4333, Level 16, State 1, Line 1
The database cannot be recovered because the log was not restored.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
そして、破滅的な状況で必要なのは、機能しない復元です。
バックアップには、データ ファイルとログ ファイルの両方が含まれます。
RESTORE FILELISTONLY
FROM DISK = 'MyDatabase.bak'
Logical Name PhysicalName
============= ===============
MyDatabase C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\MyDatabase.mdf
MyDatabase_log C:\Program Files\Microsoft SQL Server\MSSQL.1\MSSQL\DATA\MyDatabase_log.LDF