单文件恢复数据库,dbcc checkdb发现8956错误,使用REPAIR_REBUILD无法修复?如何解决!
日志文件被删除
采用单文件mdf修复数据库后
用dbcc检查数据库
发现8956等索引损坏错误,采用dbcc checkdb('db',REPAIR_REBUILD)无法修复
如何解决
修复方法如下
----------------------------------
新建一同名数据库(文件名,文件组都和原来的一样),然后停止数据库服务,用原来文件替换新建的数
据库文件,启动数据库,该数据库被设未suspect
然后把数据库改成紧急模式:
sp_configure 'allow', 1
reconfigure with override
update sysdatabases set status = 32768 where name = '数据库名'
把LDF文件改名,再执行
DBCC REBUILD_LOG ('数据库名', 'E:\fdzz\database\fdzz1204_Log.LDF' )
恢复数据库紧急模式
update sysdatabases set status = 0 where name = '数据库名'
执行
restore database 数据库名 WITH RECOVERY
sp_configure 'allow', 0
reconfigure with override