日期:2014-05-19  浏览次数:20501 次

各位大哥,我的数据库还有救吗
各位高手帮我看看,附加数据库时,总是出现以下提示,而无法附加数据库,提示为:

          错误   9004:处理数据库 'newd '的日志时出错。

这是什么原因造成的呀,有没有什么方法恢复呀,这个数据库是个比较重要数据,请各位帮帮忙。先谢了




------解决方案--------------------
如果直接附加有问题,尝试如下方式:(如果数据文件和日志文件都损坏,恐怕没有办法处理)

备份数据文件,然后按下面的步骤处理:

1.新建一个同名的数据库(数据文件与原来的要一致)

2.再停掉sql server(注意不要分离数据库)

3.用原数据库的数据文件覆盖掉这个新建的数据库

4.再重启sql server

5.此时打开企业管理器时会出现置疑,先不管,执行下面的语句(注意修改其中的数据库名)

USE MASTER
GO

SP_CONFIGURE 'ALLOW UPDATES ',1 RECONFIGURE WITH OVERRIDE
GO

UPDATE SYSDATABASES SET STATUS =32768 WHERE NAME= '置疑的数据库名 '
Go

sp_dboption '置疑的数据库名 ', 'single user ', 'true '
Go

DBCC CHECKDB( '置疑的数据库名 ')
Go

update sysdatabases set status =28 where name= '置疑的数据库名 '
Go

sp_configure 'allow updates ', 0 reconfigure with override
Go

sp_dboption '置疑的数据库名 ', 'single user ', 'false '
Go


6.完成后一般就可以访问数据库中的数据了,这时,数据库本身一般还要问题,解决办法是,利用
数据库的脚本创建一个新的数据库,并将数据导进去就行了.