自分の備忘録として、データベースの最適化について整理しておきます。
データベースの最適化
SharePoint を使っている場合もデータベース内のデータがフラグメントするため、定期的に最適化する必要があります。
データベースの最適化方法には次の2つがあります。なお、いずれも SQL Server 2005 以降を使用していることを前提としています。
「SharePoint の SP2 を適用している」
SP2 ではコンテンツ DB に対しては、自動的に最適化されるようになっています。このことについては以前の記事で紹介しています。
「SharePoint の SP2 を適用していない」
SP2 を適用していない場合は、SQL Server ストアドプロシージャを作成して定期的に実行します。詳細についてはサポート技術文書を参照してください。
- 「Windows SharePoint Services 3. 0 のデータベースや SharePoint Server 2007 データベースを最適化する方法」
http://support.microsoft.com/kb/943345/ja
ちなみに、上記のサポート技術文書を確認すると、SP2 適用後の場合は、自動的に最適化される対象は "コンテンツ DB" および "構成データベース" となっているとあるので、コンテンツ DB だけが最適化の対象ではなかったようです。
ということは、結局このサポート技術文書にあるストアド プロシージャが 、SP2 をインストールするとDBに作成されるということかしら、と確認をしてみたところ、確かにありました。 サポート技術文書同様に "dbo.proc_DefragmentIndices" という名前のストアドプロシージャです。
そこで SP2 が適用された SharePoint Server 2007 のDBを一通り確認してみました。
ストアドプロシージャが追加されていたのは以下のDBです。これらのDBでは、タイマージョブにより自動的にストアドプロシージャが実行されるわけです。
- SharePoint_AdminContent_<GUID> (SharePointサーバーの全体管理サイトのコンテンツ データベース)
- SharePoint_Config (構成データベース)
- 各コンテンツDB
作成されていなかったDBは次の通りです。
- SharedServices1_DB (共有サービスデータベース)
- SharedServices1_Search_DB(共有サービス検索データベース)
- WSS_Search_<サーバー名> (検索サービスデータベース)
以上、ご参考まで。
コメント