2016-09-07 76 views
0

我已經在下面用來恢復遠程服務器中的.bak文件,它不起作用。恢復數據庫SQL腳本不能正常工作

restore database Status_backup 
from disk = N'E:\Status bak files\Status_backup_201404302300.bak' 
with 
    move 'Status_backup_201404302300' to N'E:\Files\Status_backup_201404302300.mdf', 
    move 'Status_backup_201404302300' to N'E:\Files\Status_backup_201404302300.ldf' 

我得到以下錯誤

消息3201,級別16,狀態2,第25行無法打開備份設備 'E:\ BAK狀態文件\ Status_backup_201404302300.bak'。操作系統 錯誤3(系統找不到指定的路徑。)。 Msg 3013,級別 16,狀態1,行25 RESTORE DATABASE正在異常終止。

請提示腳本中有什麼錯誤?

+1

在錯誤消息中明確表示:「系統找不到指定的路徑。」確保備份文件存在於您指定的位置並且可以在運行SQL Server的帳戶下訪問。 –

+0

在文件夾10中.bak文件存在與日期時間戳。我需要檢查哪個帳戶? – Amelia

回答

0

您的路徑包含空格。添加雙引號或將路徑名更改爲不含空格的內容。

事實證明,你的實際問題是該文件在另一臺機器上的位置。您嘗試使用本地路徑訪問遠程文件。您應該將備份文件複製到您的本地計算機(您的sql服務器顯然是),然後再次嘗試使用相應的路徑。

+0

用雙引號還是相同的錯誤沒有改變。 – Amelia

+0

你只是用雙引號替換單引號,還是用雙引號括起了該路徑,並將整個字符串用單引號括起來? –

+0

用雙引號替換單個。那是錯的嗎? – Amelia

0

試試這個;

RESTORE DATABASE Status_backup 
FROM DISK = 'E:\Status bak files\Status_backup_201404302300.bak' 
WITH 
    MOVE 'Status_backup_201404302300' TO 'E:\Files\Status_backup_201404302300.mdf', 
    MOVE 'Status_backup_201404302300_log' TO 'E:\Files\Status_backup_201404302300.ldf', 
REPLACE