環境はWindows Server 2008 R2 + SQL Server 2008 R2。
作成したメンテナンスプランでエラーが発生した時にメールを飛ばしたい。
メールを飛ばす方法は2種類あって、
サーバのメーラーを使うか、SMTPを使うか。
まずはサーバのメーラーで考えてみるが、
サーバー内にメーラーが見当たらない・・・。
調べてみるとデフォルトではインストールされないとのこと。
サーバーマネージャーの機能の追加から、
『デスクトップエクスペリエンス』をインストールすることで、
メーラーが使えるようになるらしいけども、
うまくいかなかった・・・。
どうやら R2 の有り無しは元となるOS自体が違うとのことで、
上記の内容はR2 無しのバージョン用かも・・・。
やってみたい人は下記の画像を参考にどうぞ。
というわけで、SMTPを使う方法にしてみる。
無理やりメーラーインストールするのも嫌なので。
SMTP設定
1.Microsoft SQL Server Management Studio を開く。
2.ホストに接続し、『管理』⇒『データベース メール』⇒『データベース メールの構成』。
3.ウィザード画面が表示されるので『次へ』。
4.『次のタスクを実行して・・・』で『次へ』。
5.『データベース メール機能は使用できません。』にちょっとびびるけど『はい』で。
6.プロファイル名を適当に決めて『追加』ボタン。
7.メールアカウントの設定は、各自のSMTPアカウント用に入力して『OK』。
8.登録されたことを確認して『次へ』。
9.パブリックプロファイルの設定をして『次へ』。
10.パラメータは特に内容を変えず『次へ』。
11.確認して『完了』。
12.『閉じる』で設定完了。
送信先の設定
1. SQL Server エージェント⇒オペレーターで右クリック『新しいオペレーター』。
2. 名前を適当に決め、送信したいメールアドレスを『;』区切りで電子メール名に入力し『OK』。
警告システムの設定
1.SQL Server エージェントで右クリック『プロパティ』。
2.『警告システム』をクリック。
3.『メールプロファイルを有効にする』にチェック。
ジョブの設定
1.SQL Server エージェントのジョブから、該当するメンテナンスプランのジョブで右クリック⇒プロパティ。
2.『通知』をクリック。
3. 『電子メール』にチェックをつけ、オペレーターを選択、『ジョブ成功時』を選択で『OK』。
4.最後にSQL Server エージェントで右クリック⇒再起動をすること!