sql2008备份集中的数据库备份与现有的xxx数据库不同解决方法
Posted 海阔天空
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了sql2008备份集中的数据库备份与现有的xxx数据库不同解决方法相关的知识,希望对你有一定的参考价值。
https://www.cnblogs.com/VAllen/p/MSSQL-RESTORE.html
RESTORE DATABASE test -- xxxx-改为你自己的数据名称
FROM DISK = \'E:\\test\\data\\xxx.bak\' --bak文件路径 xxxx-改为你自己的数据名称
with replace,
MOVE \'xxx\' TO \'E:\\test\\data\\test.mdf\', --mdf文件路径--xxxx-改为你自己的数据名称
MOVE \'xxx_log\' TO \'E:\\test\\data\\test_log.ldf\' --ldf文件路径xxxx-改为你自己的数据名称
执行时报错,提示逻辑文件xxx不是数据库xxx的一部分,请使用RESTORE FILELISTONLY 来列出逻辑文件名
。
根据提示,执行如下代码。
RESTORE FILELISTONLY
FROM DISK = \'E:\\data\\xxx.bak\'
看到执行结果中的逻辑名后,刚才的代码改成:
RESTORE DATABASE test -- xxxx-改为你自己的数据名称
FROM DISK = \'E:\\test\\data\\xxx.bak\' --bak文件路径 xxxx-改为你自己的数据名称
with replace,
MOVE \'ceshi\' TO \'E:\\test\\data\\test.mdf\', --mdf文件路径--xxxx-改为你自己的数据名称
MOVE \'ceshi_log\' TO \'E:\\test\\data\\test_log.ldf\' --ldf文件路径xxxx-改为你自己的数据名称
再次执行,成功还原数据库。
PS:在空数据库上还原MSSQL数据库备份文件时,要注意该备份文件当时的备份方式是否以完整备份
的方式进行备份,而不是所谓的差异备份
。如果是差异备份
,会造成还原失败
。
以上是关于sql2008备份集中的数据库备份与现有的xxx数据库不同解决方法的主要内容,如果未能解决你的问题,请参考以下文章