Oracle11g(11.1)でバックアップが失敗したらメールを送信したい
開発で運用しているOracleが1台だったころは良かったのですが、日々増えてゆき今では7台くらい面倒を見なくてはなりません。
ARCHIVELOGモードをONにして、オンラインバックアップを取得しているのですが、ぎりぎりのDISKリソースで開発をまわしているため
たまに容量不足でバックアップが取得できなかったりします。
Oracle Enterprise Managerにログインしてジョブの実行結果を見るのですが、これも結構時間のかかる作業でして、バックアップ取得に失敗したら
メールを送信するように設定しようと思い立ったのです。
ジョブを編集モードで開き、アクセスのタブに電子メール通知に関する設定があるのですが、なんとグレーアウトしています。(下の図の赤枠内)
グレーアウトしている理由が分からないので、いろいろ試行錯誤し、他の設定が間違っていてグレーアウトしているんじゃないかと思いながら調べてみても
まったく解決しませんでした。そうこうしているうちに、以下のような文書を見つけたのです。
http://download.oracle.com/docs/cd/E16338_01/server.112/b56319/chapter1.htm#sthref13
1.5.2 Oracle Schedulerの改善点次の項では、Oracle Schedulerの改善点について説明します。
1.5.2.1 電子メール通知Oracle Database 11gリリース2(11.2)ユーザーは、任意のジョブ・アクティビティについて電子メール通知を受け取ることができます。
この機能により、ジョブを頻繁に監視することなく関心のある任意のジョブ・アクティビティについて通知されるため、効率が向上します。
つ、つまり、Oracle11g(11.1)では出来ないと。。。。
ただ、あきらめきれずに調べてみると、どうやらジョブのアクセスタブで「お手軽に」できるのは、Oracle 11g Release 2からであって、
ルールを新規に登録すれば、11g Release 1でも可能みたいです。
以下におおまかな手順を示します。
- 設定>通知メソッド にて、メール送信に使用するメールサーバの設定を行う
- プリファレンス>一般 にて、受信するメールアドレスの設定を行う
- プリファレンス>ルール にて、新しいルールを作成する
- 設定>管理者 にて、「ルールにサブスクライブ」を押下し、3で作成したルールを購読する
一応、画面も載せておきましょう。
下の図のように、メールサーバの設定を行い、
受信者のメールアドレスを設定し、
ルールを作成し、(下の図はルール作成後のイメージ)
作成したルールをサブスクライブ状態にする
これで、バックアップジョブが失敗したらメールが来ます。
さて、この設定を7台分しなきゃ。。。。