附加数据库失败,提示:
无法在数据库 'DBNAME' (数据库 ID 为 7)的页 (1:210288) 上重做事务 ID (0:0) 的日志记录
或者
在重做数据库 'DBNAME' 的日志中记录的操作时,日志记录 ID (1752535:20699:5) 出错
或者
找不到日志文件
或者
日志文件不匹配
首先:停止数据库服务,把有问题的数据库拷贝一份
第一步:先建立一个同名数据库,数据库文件和日志的名称设置成跟原数据库文件一致
停止SQL SERVER2008,将原来的.mdf数据库文件覆盖刚新建的.mdf数据库文件,重新启动数据库
第二步:查询分析器执行,
SQL code
alter database NEWDBNAME set emergency
declare @databasename varchar(255)
set @databasename='NEWDBNAME'
exec sp_dboption @databasename, N'single', N'true'
dbcc checkdb(@databasename,REPAIR_ALLOW_DATA_LOSS) --将目标数据库置为单用户状态
dbcc checkdb(@databasename,REPAIR_REBUILD)
exec sp_dboption @databasename, N'single', N'false'
第三步:以上代码请同时运行,可能会出现“数据库其他多个文件与数据库主文件不匹配....”错误,请多次重试执行以上代码
断电 数据库状态 变为可疑,停掉数据服务后,复制一份数据。然后启动服务,直接在查询分析器执行以上代码,一般能够恢复正常