2010-11-03 133 views
0

我正在嘗試使用C#和SQL服務器數據庫以新名稱爲新服務器創建數據庫備份和還原。我可以創建數據庫的備份,但我無法使用新名稱將其還原到新服務器。使用新名稱將數據庫還原到新服務器

我的查詢看起來是這樣的:它不工作和錯誤的:

RESTORE DATABASE test1 FROM DISK = 'C:\Program Files\Microsoft SQL Server\MSSQL\BACKUP\setupdb\BackupForsetupdb.bak' 
WITH MOVE 'setupdb_Data' TO '\\newserver\e$\MSSQL\DATA\test1_Data.MDF', 
MOVE 'setupdb_log' TO '\\newserver\e$\MSSQL\DATA\test1_Log.LDF'; 

我想通過C#code.It實現這個看起來像數據庫不能恢復到遠程服務器。請在此點亮一下。

謝謝!

+0

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

回答

3

你不能在網絡共享上的SQL Server數據庫正常:本地/ SAN類型的驅動器只

備份文件可以在一個份額,但中密度纖維板和LDFS必須是本地

有一個MS KB article就可以了:它可以完成,但是需要您自擔風險

+0

你可以做到。我已經配置了一個服務器來從UNC路徑運行dbs。 (不要問我爲什麼......)不要說它是一個好主意,但它是可能的。 – 2010-11-03 20:41:30

1

您的移動命令的路徑必須是相對於服務器的。

e:\MSSQL\Data\test1_data.mdf 

而且您從路徑還原還必須相對於服務器以及。如果c:\來自本地計算機,則需要將其指向UNC路徑(\\yourpc\c$\...)或將其移至服務器。但請注意,如果使用UNC路徑選項,則服務器進程正在運行的用戶必須有權訪問該共享。所以你最好把它複製到遠程計算機上的驅動器上。

相關問題