トップページへ PASSJ ブログへ
トップページへ
分科会
特集!
コミュニケーション
資格
セミナー・コンファレンス
インフォメーション



ビギナーボードリーダー:堀川 明

毎月第2、第4木曜日はボードリーダーからのレポートを掲載いたします。
 
   

2004年2月12日
『 SQL Mail を使っていますか?(2)』

データベースサーバーが、今、正しく動いているかどうか、データベース管理者の方は、気になるかと思います。

このようなサーバーの生き死にチェック確認に、定期実行ジョブと、SQL Mail を組み合わせた監視体制を設定するのがよいと思います。

定期実行ジョブと、メール受信用のストアドプロシージャ(xp_readmail)と メール送信用のストアドプロシージャ(xp_sendmail)を組み合わせれば、管理者の方がデータベースサーバーに対してコマンドメールを送信し、そのコマンドメールに対応する返信メールを確認することで、データベースサーバーの運用管理状態を把握することが可能になります。

しかしこの方法は、誰でもメールの送信が可能で、送信元の偽装が容易であることを考えると、お勧めできるものではありません。

やはり、データベースサーバー側から一方的に、管理者宛てにメールを送信するような方法がよいと思います。

メール送信間隔をあらかじめ決めておき、その定期メールが届かなかったり、届いたメールの内容がおかしかったりしたときに、管理者がデータベースサーバーに駆けつける体勢がよいと思います。

まず一番最初に、毎朝、データベースのチェックを行いましょう。

DBCC CHECKDB ('データベース名')

早朝4時ぐらいに、まだ誰もデータベースを使っていない状況を見て実行するのが良いでしょう(もちろん CHECKDB はデータベースが使用中でも実行できます)。

このデータベースのチェックをジョブに登録しておき、そのジョブの実行結果レポートを管理者あてに送信します。
そうすれば出社前の、データベース使用開始前の健康状態が把握できます。

また、若干のパフォーマンス低下はありますが、定期的に、特定のテーブルの整合性チェックを行うのも良いでしょう。

DBCC CHECKTABLE ('テーブル名')

これも、実行結果などを管理者に通知すると良いです。
特に、レコードの更新が激しいテーブルなどは、要注意対象として、監視体制に組み込みましょう。

ただ単純にデータベースサーバーの生き死に確認をする程度であれば、特定のテーブルのレコード件数を報告するのでも良いでしょう。

またストアドプロシージャの中でエラーが発生したりした場合は、管理者あてにメールを送信してその復旧を手助けしてもらうようなプログラミングがよいと思います。

このように、SQL Server では、ジョブの自動実行機能や、メールの自動送受信機能が用意されており、これらの機能をうまく活用することで、管理者のメンテナンス作業の手間を省いてくれます。

これらを上手に利用して、データベースサーバーからの信号を、検出できるようにしましょう。

ボードリーダーレポート トップページへ

 

 
PASSJメールニュース 著作権ついて プライバシーポリシー リンクポリシー お問い合わせ
(C) 2005 Professional Association for SQL Server Japan. All rights reserved.