博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
用Sql Server 2000的数据库备份来还原Sql Server 2005中的数据库
阅读量:6328 次
发布时间:2019-06-22

本文共 2030 字,大约阅读时间需要 6 分钟。

 现在手中有Sql Server 2000中的数据库备份文件(如果此备份文件没有后缀名*.bak或*.trn,请追加相应的后缀名),欲将此文件还原到Sql Server 2005中,还原时突然报错,为此在网上搜索了有关文章,
中有一篇《
 》讲解到了,但个人感觉不是很详细,现将分析和解决方法详细讲解。

【简单回顾】

      如果我们有Sql Server 2000的数据库备份文件,要还原到另外一个Sql Server 2000数据库中,我们的操作是什么样的呢?

1、在目标数据库服务器中,打开Sql Server 2000的企业管理器,并新建与原库同名的数据库;

2、右键选择新建的数据库,找到并选择还原数据库,再随后的窗口中选择从设备;

3、添加Sql Server 2000的数据库备份文件并勾选覆盖原有数据库,点击确定,还原成功!

以上叙述为简单的回顾在Sql Server 2000中还原数据库的过程,虽然叙述的步骤不详细,但这大体的步骤已经可以说明一些问题了!请接着往下看……


【还原Sql Server 2005】

      回顾完Sql Server 2000中的数据库还原步骤,那么要将Sql Server 2000的数据库备份还原到Sql Server 2005上是不是也是如此呢?于是我如此这般的做了:

1、在目标数据库服务器中,打开
SQL Server Management Studio
,登录成功后,新建与原库同名的数据库;

2、右键选择新建的数据库,选择“任务”下的“还原”,再随后的窗口中选择“源设备”;

3、添加Sql Server 2000的数据库备份文件(此处的备份文件必须已经添加好后缀名),在列表中勾选此文件点击“确定”。

4、提示错误信息如下:

标题: Microsoft SQL Server Management Studio
------------------------------

还原 对于 服务器“***”失败。  (Microsoft.SqlServer.Smo)

有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&EvtSrc=Microsoft.SqlServer.Management.Smo.ExceptionTemplates.FailedOperationExceptionText&EvtID=还原+Server&LinkId=20476

------------------------------

其他信息:

System.Data.SqlClient.SqlError: 备份集中的数据库备份与现有的 '***' 数据库不同。 (Microsoft.SqlServer.Smo)

有关帮助信息,请单击: http://go.microsoft.com/fwlink?ProdName=Microsoft+SQL+Server&ProdVer=9.00.3042.00&LinkId=20476

------------------------------

按钮:

确定

------------------------------
附图如下:
详细错误信息附图如下:
【解决步骤】
      看了的《 》后知道,若要用Sql Server 2000成功还原到Sql Server 2005中并不能按照在Sql Server 2000中的还原步骤来还原,即不能新建与原库同名的数据库,正确的还原方法如下叙述:
1、删除上述操作中新建的数据库或还原时要起的数据库名称相同的数据库名称,结合上图如删除已存在的'CN17006_db'数据库;
2、右击“数据库”选择“还原数据库”;
3、在出现的窗口中输入目标数据库,如输入CN17006_db,并选择“源设备”,点击浏览按钮;
4、单击“添加”按钮,选择Sql Server 2000的备份文件,点击“确定”按钮到初始窗口,勾选文件前“还原”列的复选框;
5、点击“确定”按钮,数据库还原成功。
【关键所在】
      由上述内容不难看出来,使用Sql Server 2000的数据库备份文件还原Sql Server 2000的数据库和还原Sql Server 2005的数据库时,其关键所在就是在Sql 2000时是必须新建数据库并对其还原,而在Sql 2005时是必须不能新建数据库才能对其还原。另外一个区别就是Sql 2000时是要新建的数据库名称与原库名称相同,而Sql 2005时输入的数据库名称可以是任意的一个名称,不必与原库名称相同。

本文转自刚刚博客园博客,原文链接:http://www.cnblogs.com/lijigang/archive/2008/06/06/1215112.html,如需转载请自行联系原作者

你可能感兴趣的文章
//……关于报文
查看>>
C语言学习-进制转换、变量
查看>>
Base64编码及其作用
查看>>
20172304 2017-2018-2 《程序设计与数据结构》实验五报告
查看>>
第六周学习总结
查看>>
20个数据库设计的最佳实践
查看>>
C# async
查看>>
C语言博客作业02--循环结构
查看>>
图片时钟
查看>>
Unity-2017.3官方实例教程Space-Shooter(一)
查看>>
makefile中重载与取消隐藏规则示例
查看>>
Linux 内核版本号查看
查看>>
4-3 简单求和 (10分)
查看>>
Python环境部署
查看>>
[BZOJ1927]星际竞速(费用流)
查看>>
为运维人员插上腾飞更远的翅膀!
查看>>
Word 2003中编辑标记与格式标记大讨论
查看>>
从国内向海外转移域名经验谈
查看>>
浅谈apache与tomact的整合
查看>>
SQL Server vNext CTP1 on Linux
查看>>