Zabbixを使用してOracleテーブルスペースの操作プロセスを監視する

Zabbixを使用してOracleテーブルスペースの操作プロセスを監視する

0. 概要

Zabbix は非常に強力なオープンソースの監視ツールです。以下では、Zabbix がテーブルスペースを監視する方法について説明します。この考え方に従えば、他の項目の監視も同様です。

前提条件は、zabbix サーバーと zabbix エージェントがすでに存在し、zabbix エージェントと Oracle データベースが同じマシン上で実行されていることです。

1.エージェント上でスクリプトを準備する

a. テーブルスペースの使用状況に関するスクリプトを定義する

/home/oracle/get_tablespace_usage.sh

#!/bin/bash
# テーブルスペースの使用状況を取得する
ソース ~/.bash_profile
機能チェック{
sqlplus -S "/ を sysdba として" << EOF
行サイズを200、ページサイズを200に設定
フィードバックをオフにする
/tmp/tablespace.log をスプールします
dba_tablespace_usage_metrics から tablespace_name、round(used_percent) used_percent を選択します。
巻き取る
やめる
終了
};
チェック &> /dev/null
エラー = `grep ERROR /tmp/tablespace.log | wc -l`
[ "$errors" -gt 0 ]の場合;
    エコー "" > /tmp/tablespace.log
フィ

chown oracle:get_tablespace_usage.sh

chmod 755 get_tablespace_usage.sh

b. 表領域の自動検出用のスクリプトを定義する

スクリプト

#!/bin/bash
# zabbix 自動検出 Oracle テーブルスペース
テーブルスペース=(`cat /tmp/tablespace.log | awk '{print $1}' | grep -v "^$"`)
長さ=${#テーブルスペース[@]}
printf "{\n"
printf '\t'"\"データ\":["
((i=0;i<$length;i++)) の場合
する
    printf "\n\t\t{"
    printf "\"{#TABLESPACE_NAME}\":\"${tablespaces[$i]}\"}"
    [ $i -lt $[$length-1] ]の場合;
        printf ","
    フィ
終わり
    printf "\n\t]\n"
printf "}\n"

chmod 755 /etc/zabbix/scripts/discovery_tablespace.sh

c. 表領域監視項目スクリプトを定義する

/etc/zabbix/scripts/テーブルスペースチェック.sh

#!/bin/bash
# Oracle 表領域チェック
テーブルスペース名=$1
grep "\b$TABLESPACE_NAME\b" /tmp/tablespace.log | awk '{print $2}'

chmod 755 /etc/zabbix/scripts/tablespace_check.sh

2. スクリプトaをcrontabに入れる

su - オラクル

crontab -e

*/5 * * * * /home/oracle/get_tablespace_usage.sh

実行結果は /tmp/tablespace.log にあります。最初の列は表領域の名前で、2 番目の列は対応する表領域の使用状況です。

例2                                                                                                                                                             
システム 3                                                                                                                                                             
システム5                                                                                                                                                             
TBS01 85                                                                                                                                                             
温度 0                                                                                                                                                             
非ドットBS1 0                                                                                                                                                             
ユーザー 1

3. エージェントパラメータを編集する

vi /etc/zabbix/zabbix_agentd.d/userparameter_oracle.conf
# テーブルスペースの使用状況
ユーザーパラメータ=discovery.tablespace、/etc/zabbix/scripts/discovery_tablespace.sh
ユーザーパラメータ=tablespace.check.[*],/etc/zabbix/scripts/tablespace_check.sh $1

4. Zabbixウェブインターフェースで関連オプションを設定する

a. テンプレートを作成します。テンプレートには好きな名前を付けることができます。ここではマクロを定義します

b. 自動検出ルールを作成する

c. 監視項目のプロトタイプを作成する

d. トリガータイプを作成する

e. グラフィックプロトタイプを作成する

5. テスト

テーブルスペースにテーブルを作成し、80% を超えるようにデータを挿入して、アラームが発生するかどうかを確認しました。

テスト合格しました!

Zabbix を使用して Oracle テーブル スペースを監視する操作プロセスに関するこの記事はこれで終わりです。Zabbix による Oracle テーブル スペースの監視に関する関連コンテンツの詳細については、123WORDPRESS.COM で以前の記事を検索するか、次の関連記事を引き続き参照してください。今後とも 123WORDPRESS.COM をよろしくお願いいたします。

以下もご興味があるかもしれません:
  • 新しいプロジェクト用の Oracle テーブルの作成
  • Oracle一時表領域SQL文の実装
  • Oracleブロックチェーンテーブル作成プロセスの詳細な説明
  • Oracleテーブルパーティションの概念と操作
  • Oracleでテーブルデータを一括削除するいくつかの方法
  • PythonはOracleからデータを読み取り、グラフを生成します
  • Oracle 表領域拡張の詳細

<<:  Mysql で期間の交差をクエリする方法

>>:  Vue での this.$set の使用に関する詳細な説明

推薦する

Linux システムで MySQL の文字セットを UTF8 に変更する手順

目次1. データベース内の MySQL ステータスを確認します。 2. 設定ファイルを変更します。 ...

Linux コマンドラインのクイックヒント: ファイルの検索方法

私たちのコンピューターには、ディレクトリ、写真、ソース コードなどのファイルが保存されています。たく...

読み取り専用と無効の違い

要約すると: Readonly は入力 (テキスト/パスワード) とテキスト領域に対してのみ有効です...

Ubuntu 19 以下に Android Studio をインストールするチュートリアル

過去の経験から言うと、タスクを完了した後にメモを取るのは良い習慣です。インストール環境はUbuntu...

Vue はインターフェースのスライド効果を実装します

この記事では、インターフェースのスライド効果を実現するためのVueの具体的なコードを例として紹介しま...

MySQL 5.7.17 winx64 解凍版のインストールと設定方法のグラフィックチュートリアル

この記事では、MySQL 5.7.17 winx64解凍版のインストールと設定方法を紹介します。具体...

Linux スクリプトの基礎を詳しく紹介

目次1. スクリプトvim環境2. シェルスクリプトで環境を定義する方法3. シェルスクリプト内の翻...

redhat7 に yum 経由で mysql5.7.17 をインストールするチュートリアル

RHEL/CentOS シリーズの Linux オペレーティング システムには MySQL ソース自...

MAC で MySQL のデフォルトの文字セットを utf8 に変更する方法

1. デフォルトでインストールされているMySQLの文字セットを確認するmysql> '...

txt ブックの内容を Web ページに表示するコード

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1...

JavaScript CollectGarbage 関数の例

まず、メモリ解放の例を見てみましょう。 <スクリプト言語="JavaScript&q...

MySQL 8.0.11 MSI バージョンのインストールと構成のグラフィック チュートリアル

この記事では、MySQL 8.0.11 MSIバージョンのインストールと設定のチュートリアルを参考ま...

MySQL パスワードに特殊文字が含まれている場合とコマンドラインからログインする場合

サーバーでは、データベースにすばやくログインするために、通常は mysql -hhost -uuse...

JavaScript スコープチェーンの基本原理のグラフィカルな説明

目次序文範囲1. スコープとは何ですか? 2. [[スコープ]] プロパティ3. スコープチェーン4...