2010-11-03 143 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路径选项,则服务器进程正在运行的用户必须有权访问该共享。所以你最好把它复制到远程计算机上的驱动器上。

相关问题