我希望将 SQL Server 2012 Standard 数据库复制到我的 localdb 实例。我尝试过的向导提示 localdb 不是 SQL Server 2005 或更高版本的 Express 实例。我还进行了备份/恢复,但是在我的 localdb 中恢复时出现以下错误...
运行这个...
RESTORE DATABASE CSODev
FROM DISK = 'C:\MyBckDir\CSODev.bak'
WITH MOVE 'CSOdev_Data' TO 'C:\Users\cblair\CSOdev_Data.mdf',
MOVE 'CSOdev_Log' TO 'C:\Users\cblair\CSOdev_Log.ldf',
REPLACE
我收到错误消息...
Processed 8752 pages for database 'CSODev', file 'CSOdev_Data' on file 1.
Processed 5 pages for database 'CSODev', file 'CSOdev_Log' on file 1.Msg 1853, Level 16, State 1, Line 1
The logical database file 'CSOdev_Log' cannot be found. Specify the full path for the file.
Msg 3167, Level 16, State 1, Line 1
RESTORE could not start database 'CSODev'.
Msg 3013, Level 16, State 1, Line 1
RESTORE DATABASE is terminating abnormally.
数据库最终处于“恢复待定”模式。日志文件似乎有问题。我已经尝试了 2 个不同的备份,以防其中一个备份损坏。
最佳答案
有known limitation (事实上,这是一个真正的错误)对于 localDB。当您的数据库文件位于不同的文件夹中时,使用 MOVE 进行的任何 RESTORE 操作都会失败。
您必须在原始文件夹中恢复(无移动)。如果需要伪造驱动器:/路径,请使用 SUBST 等 cmd 工具。
关于sql - 如何将 SQL Server 2012 数据库复制到 localdb 实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13126726/