日期:2013-02-07  浏览次数:20655 次

  SQL Server的每一个版本都曾经逐渐变得越来越自我调整和自我维护了。然而,对于基本维护的需求,例如删除索引碎片,更新统计数据,检查数据库分歧性,以及进行备份仍然是不会消逝的。你可以想象一下,索引的维护就像是给你的汽车换油,备份就像是买保险。你可以没有保险,但是一旦你需求它,它就在手边。同样的,你的汽车可以在没有换油的情况下跑上几千公里,但是经常维护会产生更好的功用,并且可以让你的汽车寿命延续几年。

  SQL Server 2005把维护计划以SSIS包的方式予以实现,它为任务的定制提供更大的灵活性。如今开始计划你要执行的Transact-SQL命令,以便察看,而不要用没有文档记载的SQL Server 2000中的存储过程。另一个你可以检查的领域是执行历史,它可以使处理问题的维护计划在很大程度上简单化。

  SQL Server 2000中的维护计划

  让我们简单地回顾一下SQL Server 2000中的数据库维护计划是什么样子。你通过点击一些导游的界面创建一个维护计划,它让你选择完全备份、事务日至备份,索引维护和检查数据库分歧性的选项。这听起来很简单,是吗?是的,除非维护计划是个“黑盒子”导游并没有显示给你刚才创建的任务会执行的Transact-SQL语句。

  更进一步地讲,如果你曾经检查过通过维护计划导游创建的任务的属性,你就会知道任务的步骤看起来是下面这个样子:

  EXECUTE master.dbo.xp_sqlmaint N'-PlanID 7BCCF8E2-B8F4-4B92-BC3B-

  F2FA1BAE25C0 -WriteHistory -VrfyBackup -BkUpMedia DISK -BkUpDB -UseDefDir -BkExt "BAK"'

  为了了解这个维护计划屏幕之后的事情,你必须让你本人熟悉xp_sqlmaint扩展存储程序。这个程序也叫做 SQLMAINT工具,大概有一打的开关。此外,你还可以从命令行调用SQLMAINT。如果维护计划任务在任务历史中曾经失败过,在任务历史中显示了如下完全没有意义的信息片断的话,也许这样更重要: