使用SQL FileTable将数据库备份还原到同一实例

时间:2016-07-25 17:39:37

标签: sql-server sql-server-2012 filetable

如何使用FileTable将数据库备份和还原到相同的 SQL服务器实例;启用FILESTREAM;但是有一个不同的名字?无论我是通过GUI还是编写脚本来执行此操作,我都会陷入同一个地方:恢复到新的不存在的数据库失败,并且“无法获得对数据库的独占访问权限”。

问题:我在备份中有FileTables,看起来它试图通过现有数据库的文件恢复文件。

这是我用来进行恢复的脚本:

RESTORE DATABASE [MyDatabase_Test]
FROM  DISK = N'D:\Backup\MyDatabase.bak' 
WITH  FILE = 1,  
MOVE N'MyDatabase' TO N'D:\Data\MyDatabase_Test.mdf',  
MOVE N'MyDatabase_log' TO N'E:\Data\MyDatabase_Test_log.ldf',  
MOVE N'MyDatabase_Docs' TO N'D:\Data\MyDatabase_Test_Docs',  NOUNLOAD,  STATS = 5
-- BUT now my database has a FileTable called 'Documents' which is setup as \\DBSERVER\MyDatabase\Documents.
-- How do I specify that my files should go to \\DBSERVER\MyDatabase_Test\Documents during the restore?

只有在运行它的同一个SQL实例时才会中断。我的猜测是,我需要为我要恢复的数据库的DIRECTORY_NAME指定FILESTREAM ...但是还没弄明白该怎么做(或者我是不是在正确的轨道上)

0 个答案:

没有答案