SQL还原错误:读取失败:38, Reason:1815 错误:3203
在服务器上备份的数据库文件还原至本地时,经常会遇到“读取失败”的错误
错误如下:
解决方法:
可使用SQL命令的方式手动的还原
1. 从 cmd 进入 sqlcmd .
2. 输入 以下语句,再输入 go 即可执行:
RESTORE DATABASE 还原后的数据库名 FROM DISK = \'D:\yjdb\pms_yj_20110722.bak(备份文件)\' WITH REPLACE , MOVE \'pms_yujia(曾经的mdf逻辑名)\' TO \'D:\yjdb\pms_yujia.mdf(mdf还原后的路径)\', MOVE \'pms_yujia_log(曾经的ldf逻辑名)\' TO \'D:\yjdb\pms_yujia_log.ldf(ldf还原后的路径)\'
PS:
1. 首先Move命令后的\'pms_yujia(曾经的mdf逻辑名)\'是没有.mdf后缀的,如”ActivityDB.mdf”,那么Move命令当中应该为MOVE ‘ActivityDB’ to ‘D:\yjdb\pms_yujia.mdf’.
2. 如果go之后,提示你 逻辑文件XX不数据库XX的一部分,请使用XX来查询XX。 那就说明你曾经的mdf和ldf逻辑名输入错了,用“restore filelistonly FROM DISK = \'X:\XXX.bak\'”查询你曾经的正确名字