SSMS在一定程度上方便我們進行一些常見的操作。但有時候它處理得又不是那么不人性化。尤其是錯誤信息。
今天我在進行數據庫還原的時候就碰到一個錯誤:指定的轉換無效。(SqlManagerUI)
Specified cast is not valid.(SqlManagerUI)
沒辦法,不得不敲代碼了:
RESTORE HEADERONLY FROM DISK = N'D:\XXDB.BAK' GO
看到的居然是這個:
原來是備份的時候加密了。加密就加密嘛,居然報轉換無效的錯誤.....
找到密碼后用腳本還原成功:
RESTORE FILELISTONLY FROM DISK = N'D:\XXDB.BAK' WITH PASSWORD = 'MYPASSWORD' RESTORE DATABASE [XXDB2] FROM DISK = N'D:\XXDB.BAK' WITH FILE = 1 ,MOVE N'XXDB' TO N'D:\MSSQL\DATA\XXDB2.mdf' ,MOVE N'XXData' TO N'D:\MSSQL\DATA\XXDB2_1.ndf' ,MOVE N'XXDB_log' TO N'D:\MSSQL\DATA\XXDB2_2.ldf' ,NORECOVERY ,STATS = 10 ,PASSWORD = 'MYPASSWORD' GO
--Recover the database:
RESTORE DATABASE [XXDB2] WITH RECOVERY;
GO