Oracleの生存確認の方法

皆さん、Oracleの監視ってどうしていますか?監視と言ってもいろいろありますが、まずはOracleが使用可能な状態にあるのかを監視する必要があります。しかも市販のツールはとっても高価なので、監視シェルを公開することにしました。監視項目のキモは下記の通り。

(1)Oracleのプロセスの監視
(2)リスナーの監視
(3)実際にOracleに接続してデータを取得できるか?(プロセスがゾンビになってるだけ?)

監視スクリプトはこちら(ora_ping.sh) 

<特徴>
上記(1)〜(3)のチェックをもとにメール/ログにて結果を出力します。またリスナーサービスが落ちている場合は自動的に再起動までしてくれます!

<動作環境>

LINUXやUNIXな環境。(シェルで記述してあるため、Windowsは未対応)

<バージョン UP履歴>

[02.01.11] リスナー障害時の再起動を試行する回数を設定可能と改変。
[02.01.16] 複数リスナーの監視に対応いたしました。
※複数リスナーの監視はBEGIN BLOCK 2部分で設定します。このスクリプトではLISTENER/LISTENER1の監視を行う例になっています。変更する際は適所ソースを改変下さい。

<スクリプトの使用方法>
(1)ローカルパソコン上での作業
ダウンロードしたora_ping.sh内の変数を下記の表に従って編集ください。
スクリプト内部の頭にある変数の設定を行います。自分のORACLE環境にあわせて下さい
ORACLE_BASE インストールしたORACLE環境に合わせてください
ORACLE_HOME インストールしたORACLE環境に合わせてください
ORACLE_SID 監視対象とするSIDを指定して下さい
LD_LIBRARY_PATH インストールしたORACLE環境に合わせてください
ORA_NLS33 インストールしたORACLE環境に合わせてください
mailaddress エラー発生時のメール送信先を指定してください
MachineId スクリプトを実行するマシンIDを命名してください
tools_dir スクリプトを置くディレクトリ名を指定してください
log_dir スクリプトが出力するディレクトリ名を指定してください
log_file スクリプトが出力するログファイル名を指定してください
lsnr_try_cnt リスナーチェックの再試行回数を指定してください[up 02.01.11]
スクリプトの返値
正常終了
異常終了
メール通知 異常終了時にエラー内容をメール通知
ログ 異常終了時に日時とエラー内容を出力
- スポンサーリンク -