2010-11-19 183 views
0

我嘗試使用sql-server 2008備份和恢復數據庫,並得到錯誤。恢復數據庫的問題 - sql server

備份我做到了這一點:BACKUP DATABASE MyDB TO DISK='d:\MyDB.BAK'(和它的做工精細)

,以恢復我這樣做:USE MASTER RESTORE DATABASE MyDB FROM DISK='d:\MyDB.BAK

,並得到這個錯誤:

Msg 3159, Level 16, State 1, Line 7 
The tail of the log for the database "MyDB " 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 the WITH REPLACE or WITH STOPAT clause of the RESTORE statement to just overwrite the contents of the log. 
Msg 3013, Level 16, State 1, Line 7 
RESTORE DATABASE is terminating abnormally. 

我哪裏錯了?什麼不見​​了 ?

感謝的提前

回答

2

如果你的MYDB數據庫處於「完全」恢復模式,你需要爲消息說做的正是和serperately備份日誌或更換。

因此改變你的restore命令

RESTORE DATABASE MyDB FROM DISK='d:\MyDB.BAK' WITH REPLACE 

如果您不需要在「完全」恢復模式更改爲「簡單」,避免處理日誌

+0

如果您發佈的代碼或XML ,**請**在文本編輯器中高亮顯示這些行,然後單擊編輯器工具欄上的「代碼」按鈕(101 010),以良好地格式化和語法突出顯示它! – 2010-11-19 11:14:59

+0

感謝您的幫助,但是我得到了這個錯誤: Msg 3101,Level 16,State 1,Line 7 因爲數據庫正在使用而無法獲得獨佔訪問權限。 消息3013,級別16,狀態1,行7 RESTORE DATABASE正在異常終止。 – Gold 2010-11-19 12:44:38

+0

嘗試從主數據庫運行命令。並確保沒有其他會話。使用活動監視器檢查其他會話 – Craig 2010-11-20 06:33:48