如果 DBCC CheckDB 说我的数据库正常,那它就正常吗?

如果 DBCC CheckDB 说我的数据库正常,那它就正常吗?

我正在思考一些灾难恢复方案。这个方案怎么样?

  • 运行 SQL Server 2008 或 2005 的服务器突然断电(例如,插头被拔掉)
  • 重新打开后,操作系统恢复正常,硬盘没有损坏。SQL 日志显示 DBCC CheckDB 已在所有数据库上运行,并且全部正常。

在这种情况下,服务器是否应该被视为正常,或者是否应该恢复 SQL 备份?

答案1

日志中显示的消息"...CHECKDB for database 'YourDatabase' finished without errors on 2010...."并不意味着 SQL Server 在启动时运行 DBCC;它只是一条信息性消息,只告诉您上次在数据库上运行 DBCC 的时间(请仔细查看日期)。因此,正如 @TomTom 所说,您可能需要再次手动运行 DBCC 来检查数据库的完整性。此外,如果您的维护窗口很大,最佳做法是定期安排并运行每日/每周或每月 DBCC 检查,否则您可以恢复备份并针对它运行 DBCC 以避免开销。

答案2

也许您最后一次手动运行了 DBCC CHECKDB。但除此之外,我认为服务器没有问题。

相关内容