推荐每次备份数据库以后进行一次,要获得好的 DBCC 性能的一些建议

  • 在系统使用率较低时运行 CHECKDB。
  • 请确保未同时执行其它磁盘 I/O 操作,例如磁盘备份。
  • tempdb 放到单独的磁盘系统或快速磁盘子系统中。
  • 允许 tempdb 在驱动器上有足够的扩展空间。使用带有 ESTIMATE ONLY 的 DBCC 估计 tempdb 将需要多少空间。
  • 避免运行占用大量 CPU 的查询或批处理作业。
  • 在 DBCC 命令运行时,减少活动事务。
  • 使用 NO_INFOMSGS 选项显著减少处理和 tempdb 的使用。
  1. USE master 
  2. DECLARE @dbName VARCHAR(255) 
  3. SET @dbName='需要修复的数据库实体的名称' 
  4. EXEC SP_DBOPTION @dbName, N'single', N'true'   --单用户状态 
  5. DBCC CHECKDB(@dbName,REPAIR_ALLOW_DATA_LOSS) 
  6. DBCC CHECKDB(@dbName,REPAIR_REBUILD) 
  7. EXEC SP_DBOPTION @dbName, N'single', N'false'  --多用户状态  

本日志由 flyinweb 于 2009-10-23 14:50:34 发表到 数据库技术 中,目前已经被浏览 181 次,评论 0 次;

作者添加了以下标签: SQL ServerDBCC