sqlserver 还原出现错误

sqlserver 还原出现错误,第1张

概述本文来自:http://www.cnblogs.com/ggll611928/p/6377545.html 正常一般都是sqlserver图形化工具直接右键任务》》还原数据库》》源设备》》点击添加文件就报错了 百度说不能这样直接还原,需要用命令 打开cmd命令,输入sqlcmd ,然后用命令执行,其实这个步骤和直接用图形化窗口,选择系统数据库master ,在master中新建窗口执行是一样的效果 本文来自:http://www.cnblogs.com/ggll611928/p/6377545.HTML
正常一般都是sqlserver图形化工具直接右键任务》》还原数据库》》源设备》》点击添加文件就报错了


百度说不能这样直接还原,需要用命令 打开cmd命令,输入sqlcmd ,然后用命令执行,其实这个步骤和直接用图形化窗口,选择系统数据库master ,在master中新建窗口执行是一样的效果 执行后报如下错误: Sql Server 逻辑文件 '' 不是数据库 '' 的一部分。请使用 RESTORE FILELISTONLY 来列出逻辑文件名。

当使用语句还原数据库时,报如下错误:

 消息 3234,级别 16,状态 2,第 29 行
逻辑文件 'LenborMealOrder_Base_2017' 不是数据库 'Members_01' 的一部分。请使用 RESTORE fileListONLY 来列出逻辑文件名。
消息 3013,级别 16,状态 1,第 29 行
RESTORE DATABASE 正在异常终止。

 

原因:此数据库是用SQL语句备份而来,引发的错误,原备份和还原的SQL语句如下:

--备份BACKUP DATABASE LeaRunFramework_Base_2016 TO disK  = 'c:\DB_BACKUP\LenborMealOrder_Base_2017.bak'还原RESTORE DATABASE Members_01 FROM ' WITH MOVE LenborMealOrder_Base_2017' TO c:\DB_BACKUP\Members_01.mdf',MOVE LenborMealOrder_Base_2017_logc:\DB_BACKUP\Members_01.ldf'

解决方案:查找该数据的逻辑文件名,通过下面的语句即可查出,再修改还原语句中的名称即可。

获得数据库备份文件的信息 restore fileListonly from disk='


输入命令后,会得到返回值,注意,这里是获取名称,Logicalname 而不是d:/msqlserver/data/test.mdf

如下图,这里找到是jfp 和jfp_log 而不是talkbasicnew.mdf


最后我执行成功的语句:

RESTORE DATABASE talkbasicnew  FROM disK = 'C:\talklj.bak' WITH  replace,
  MOVE 'jfp' TO 'D:\install\sqlserver\MSsql10_50.MSsqlSERVER\MSsql\DATA\talkbasicnew.mdf
 ,MOVE 'jfp_log' TO 'D:\install\sqlserver\MSsql10_50.MSsqlSERVER\MSsql\DATA\talkbasicnew.ldf'  

变量1、talkbasicnew是自己的数据库名称

变量2、C:\talklj.bak 是从其他服务器上备份回来的源文件

变量3、jfp即来自上面的命令 restore fileListonly from disk='C:\talklj.bak',

得到的名称, jfp_log也是


变量4:

D:\install\sqlserver\MSsql10_50.MSsqlSERVER\MSsql\DATA\talkbasicnew.mdf

来自己本地创建的数据库的数据文件路径 

修改后的还原语句如下:

DATABASE LenborMealOrder_Base_2017 c:\DB_BACKUP\LenborMealOrder_Base.bakLeaRunFramework_Base_2016c:\DB_BACKUP\LenborMealOrder_Base_2017.mdfLeaRunFramework_Base_2016_logc:\DB_BACKUP\LenborMealOrder_Base_2017.ldf
执行上述语句即成功还原数据库,如下图:

总结

以上是内存溢出为你收集整理的sqlserver 还原出现错误全部内容,希望文章能够帮你解决sqlserver 还原出现错误所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/1172759.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-02
下一篇 2022-06-02

发表评论

登录后才能评论

评论列表(0条)

保存