DBCC CHECKDB优化工具性能

DBCC CHECKDB 及相关语句通常必须从磁盘将每个已分配的页读取到内存中,才能对其进行检查。如果当系统上已经存在大量活动时运行 DBCC CHECKDB,会由于以下两个原因降低 DBCC 的性能。首先,可用的内存减少,并且 SQL Server 数据库引擎被迫将 DBCC CHECKDB 的一些内部数据假脱机保存到 tempdb 数据库中。其次,DBCC CHECKDB 会试图优化它从磁盘读取数据的方式。如果某一高强度工作负荷也在使用同一磁盘,那么就会大大降低优化性能,从而导致执行速度变慢。

由于 tempdb 数据库驻留在磁盘上,因此在将数据写入或写出磁盘时来自 I/O 操作的瓶颈会降低性能。针对大型数据库(相对于可用内存的大小而言)运行 DBCC CHECKDB 会导致假脱机保存到 tempdb 数据库,而与系统活动无关。因此,应将 tempdb 数据库放置在独立于用户数据库的一个快速磁盘上或多个磁盘上,如 RAID 设备。有关详细信息,请参阅 ALTER DATABASE (Transact-SQL)和 RAID。

注意:
执行 DBCC CHECKDB 时会对数据库中的每个表自动执行 DBCC CHECKTABLE,以及 DBCC CHECKALLOC 和 DBCC CHECKCATALOG,因而不必单独运行这些语句。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16436858/viewspace-520851/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16436858/viewspace-520851/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值