默认dbcc checkdb 只做数据库的检测数据库是否完好、不会主动做数据库的修复,要修复数据库,需要数据库设单用模式。
1、repair_allow_data_loss 可能导致数据丢失。
2、Repair_fast 未执行任何修复操作。
3、repair_rebuild 快速修复。
1、repaire_allow_data_loss修复的三个过程:
第一步、将标记为不可访问的页面重新标记为可以访问,就如同这些错误从来都没有发生过一样。
第二步、用常规的日志恢复技术恢复数据库。
第三步、如果日志文件损坏而导致恢复失败,将重新生成日志,这一举动可以导致事务一致性没有保证。
2、repaire_allow_data_loss不成功:
第一种:根据以前备份的文件,恢复数据库。
第二种:如果损坏只是发生在某一对象上,可以把这个对象drop掉。
3、没有事不要做dbcc checkdb 它是非常影响性能的。