SQL Server 2005のメンテナンスプランを実行しようとした時にエラーが出て保存できない問題について

SQL Server 2005にはメンテナンスプランといってSQL Serverに定期的なタスクをやらせる事のできる機能がついてます。

メンテナンスプランとは
http://technet.microsoft.com/ja-jp/library/ms187658.aspx

ただ、何も考えずにメンテナンスプランを実行しようとするとしばしばやられます。


例えば以下のようなエラーがでます。

JobStep 'メンテナンスプラン名' の作成に失敗しました。

これの原因は、Integrated ServicesっていうSQL Serverのサービスが起動していない or インストールされていないことによって起こります。

また、Integrated Servicesが入っていてもバックアップタスクをメンテナンスプランに入れようとするとエラーがでます。


ただですね、どういう理屈かはわからないのですが、
SQL Server 2005 SP2を適用すると、Integrated Servicesをインストールしなくても上記メンテナンスプランが実行できるようになります。
だけど、ここで気をつけないといけないことがあって、
SP2だけだと、データベースの整合性確認タスクおよび T-SQL ステートメントの実行タスクでデータベース コンテキストが失われることがあるというエラーが発生してしまいます。

参考:SQL Server 2005 Service Pack 2 と General Distribution Release のインストール順
http://www.microsoft.com/japan/sql/sp2_gdr_install.mspx

なので、SP2をインストールした後に934459 (Build 3159)もインストールした方がいいですよということですね。


まとめ

  • SQL Server 2005でメンテナンスプランを実行したいのであれば、SP2と934459のパッチを入れましょう。