我嘗試使用下面的查詢來恢復數據庫:日誌數據庫「數據庫名」的尾巴尚未備份
ALTER DATABASE [DatabaseName] SET Single_User WITH Rollback Immediate GO
RESTORE DATABASE DatabaseName FROM DISK = 'C:\DBName-Full Database Backup'
ALTER DATABASE [DatabaseName] SET Multi_User GO
,而不是恢復數據庫,但是,我得到這個錯誤:
Msg 3159, Level 16, State 1, Line 2
The tail of the log for the database "DatabaseName" has not been backed up. Use
BACKUP LOG WITH NORECOVERY
to backup the log if it contains work you do not want to lose. Use theWITH REPLACE
orWITH STOPAT
clause of theRESTORE
statement to just overwrite the contents of the log. Msg 3013, Level 16, State 1, Line 2RESTORE DATABASE
is terminating abnormally.
在我的情況下,當我在同一個SQL Server上已經有一個名稱相同的數據庫時,就發生了這種情況。我剛剛刪除了具有相同名稱的數據庫並運行了恢復命令。注意:我刪除了具有相同名稱的數據庫,因爲它是我不再需要的數據庫的舊副本。但是,如果您仍然需要舊副本,則可能需要對其進行備份或重命名舊數據庫或新數據庫。但是,如果您沒有具有相同名稱的數據庫,請執行錯誤消息要求執行的操作。 – nam