数据库还原出现错误,是什么原因要怎么处理?

数据库还原出现错误,是什么原因要怎么处理?,第1张

出现这个问题一般只有两个原因,一可能是.bak文件损坏,二可能你用高版本的备分SQL Server 数据库 的.bak文件想在低版本的SQL Server 上还原。

有时候你装了多个版本的SQL Server 在同一台机子上,你想用高版的SQL Server 还原打开SQL Server Management Studio时连接却是低版本的SQL Server 服务,这种情况也无法还原成功,也是由于上面列的第二个原因,我机子上做了SQL Server 2008 和 SQL Server 2005,当时用SQL 2008的SQL Server Management Studio 连接时服务器名是默认名“XXXX-PC\SQLEXPRESS”时连接的总是SQL 2005的服务实例,.bak也因此始终会d”媒体簇的结构不正确“无法处理的错误,后来将连接时服务器名直接改为”XXXX-PC“就好了,当然这取决于你的安装SQL 2008 时服务设置。

一、为备份或还原 *** 作指定的设备太多;只允许指定64个设备。RESTORE DATABASE *** 作异常终止。当还原数据库时,如果出现“为备份或还原 *** 作指定的设备太多;只允许指定64个设备。RESTORE DATABASE *** 作异常终止。”这个错误时,说明你是在把从SQLServer2005上备份的数据还原到SQLServer2000数据库上。出现这个错误:

1.并不说明你的电脑系统有问题(不用重装系统)。

2.你的SQLServer2005或SQLServer2000数据库安装的有问题(不用重装数据库)。

3.不用破口大骂微软垃圾。

很简单,只要你连接上SQLServer2005的SQLEXPRESS实例。在SQLServer2005库上还原即可。下载SQL Server Management Studio Express软件,这是用于连接管理SQLServer2005的工具。可以帮助你还原数据库,强调一下,虽然使用SQL Server Management Studio Express这个工具了,SQLEXPRESS这个实例才是你要连接的2005数据库(.\SQLEXPRESS)。而不是(.)或(local),如果是(.)或(local)说明你没有连接上SQLServer2005数据库,还会报错,必须确信你真正连接上了SQLServer2005数据库。

最后总结一下:SQLServer2005和SQLServer2000的备份是不能通用的,因此,当还原数据库时不能搞混,特别是,当从网上下载一些源代码,有些数据库的备份,没有注明是2005还是2000的,当出现以上错误时,说明你是在把从SQLServer2005上备份的数据还原到SQLServer2000。

二、在2005上备份了一个数据库,然后在2000上还原,05的兼容的版本已经设置了8.0,可是还原的时候,报以下这个错误: 为备份或还原 *** 作指定的设备太多;只允许指定64个设备。

RESTORE HEADERONLY *** 作异常终止。 (Microsoft SQL Server, Error: 3205)

如果不用到sql 2005其中的新功能,比如diagram, CLR等,是可以回到sql 2000的。错误“RESTORE HEADERONLY……”等等意思是2005与2000的备份格式不同了,所以无法辨认,出错。用sql 2005 client side连接sql 2000 server,然后restore,这样,sql 2005的客户端可以认识sql 2005的备份格式,restore成功。

你的数据库版本是SQLServer2005ExpressEdition,即个人版。这个版本最大只支持4G的数据库。你的备份文件还原的数据库大于4G,因此报错。建议你换成企业版或者标准版的SQLserver2005.


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

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

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存