DBCC CHECKDB( DB, REPAIR_REBUILD )要多长时间?
lck 2006-03-16 12:14:26 DBCC CHECKDB( DB, REPAIR_REBUILD )要多长时间?
现在业务系统有一个SQL Server 7.0的数据库,运行了6年多,不断有数据加入,大小是5G。近来作数据汇总时突然变得很慢,现在打算检查数据库,然后重建索引看能否优化一下。
我找了另外一个系统的SQL Server 2000的数据库,大小200M左右,在SQL Server 2000上作试验操作,发现DBCC CHECKDB( 'DB', repair_rebuild ) with TABLOCK 要很长时间,用了一个小时都没有完成,在这段时间里面CPU占用率很低,而且不觉得硬盘有频繁的IO操作,内存占用量也没有多大变化,感觉就像在idle一样。而DBCC CHECKDB( 'DB', repair_fast ) 很快就可以完成。硬件是Dell GX270 PC,896M内存,P4 2.8G 7200硬盘。
再查一下资料,都提到repair_rebuild需要较长的时间,但是都没有提到多大的数据库要多长时间,具体要多长时间。因为办公室夜间要断电,所以不能长时间地去让它跑,特意来问问大家,有具体的数字就最好。