kyl*_*wal 4 sql-server sql-server-2012 dbcc-checkdb
我在我的一个数据库上运行 DBCC CHECKDB,但它需要很长时间。我有一些问题请帮助我。
有没有其他方法可以检查我的数据库完整性?
我应该等待完成它吗?
执行一致性检查 ( DBCC CHECKDB)的唯一替代方法是让您的数据面临损坏和数据丢失的可能性。
有一些方法可以减少CHECKDB对系统的影响。到目前为止,最好的方法是在实时系统的副本上离线运行检查。这应该通过将数据库的完整备份恢复到另一个系统然后在DBCC CHECKDB那里运行来完成。这有两个好处:
它将您在另一台机器上遇到的 IO 和性能问题卸载
它测试您的备份恢复成功。
如果您负担不起用于测试备份和运行的辅助服务器,DBCC CHECKDB那么您可能必须分解检查并每晚针对几个单独的表运行它,以分散整个星期的负载。你可以用CHECKTABLE语句来做到这一点。将作业分解为更小的部分的另一种方法是使用CHECKFILEGROUP检查每个文件组,只有在您有多个文件组时才有意义。
你也可以试试trace flags 2549, 2562, and 2566。有关跟踪标志的更多信息、上述方法以及更多信息,请阅读 Aaron Bertrand 关于该主题的帖子here