SQL Server dbcc checkdb 修复 - 蒋乐兴的技术随笔

时间:2024-02-24 17:27:18

SQL Server dbcc checkdb 修复

               默认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 它是非常影响性能的。