我想使用命令行将MSSQL数据库从客户计算机还原到我的计算机。
语法为:
RESTORE DATABASE [MyDB] FROM DISK='D:BackupsMyDB.bak' WITH
MOVE 'AdventureWorks2008R2_Data' TO 'D:\MyData\MyAdvWorks_Data.mdf'
它有效,但每次我需要在MOVE之后指定逻辑名称,因为它位于原点中的另一个文件夹中。 有没有办法在新位置恢复备份文件而不必使用逻辑名称?
例如,我想要像:
RESTORE DATABASE [MyDB] FROM DISK='D:BackupsMyDB.bak' WITH
MOVE * TO 'D:\MyData'
答案 0 :(得分:0)
如果您试图移动文件的位置,那么您肯定需要指定逻辑名称。
http://msdn.microsoft.com/en-us/library/ms190255.aspx
如果目标是另一台服务器,您可以使用RESTORE FILELISTONLY命令查找物理和逻辑名称。
http://technet.microsoft.com/en-us/library/ms173778.aspx
以下是Greg Robidoux的剧本。它通过BACKUP链为给定数据库生成恢复TSQL代码。
您可以将其作为解决问题的起点。
http://www.mssqltips.com/sqlservertip/1243/auto-generate-sql-server-database-restore-scripts/
祝你好运Crafty DBA