首页主机资讯oracle在centos上如何监控

oracle在centos上如何监控

时间2026-01-21 02:52:04发布访客分类主机资讯浏览291
导读:在 CentOS 上监控 Oracle 的实用方案 一 监控方案总览 企业级与开源自建两类:企业级可选 Oracle Enterprise Manager(OEM);开源/自建常用 Prometheus + oracledb_export...

在 CentOS 上监控 Oracle 的实用方案

一 监控方案总览

  • 企业级与开源自建两类:企业级可选 Oracle Enterprise Manager(OEM);开源/自建常用 Prometheus + oracledb_exporterZabbix(含 Orabbix 插件)Nagios(NRPE + check_oracle)。此外,Oracle 自带的 AWR/ASH/SQL Plan Baselines 用于性能诊断与历史分析;命令行工具 lsnrctl 用于监听状态;性能工具 oratop 适合实时会话与等待事件观察。

二 快速落地步骤 Prometheus + oracledb_exporter

  • 准备数据库只读账号(示例):
    • CREATE USER exporter IDENTIFIED BY ExP0rt3r;
    • GRANT CONNECT, CREATE SESSION TO exporter;
    • GRANT SELECT ANY DICTIONARY TO exporter; (可按需最小化授权)
  • 部署采集器(示例为 oracledb_exporter 0.2.2):
    • 下载解压并启动:
      • wget https://github.com/iamseth/oracledb_exporter/releases/download/0.2.2/oracledb_exporter.0.2.2.linux-amd64.tar.gz
      • tar -zxf oracledb_exporter.0.2.2.linux-amd64.tar.gz
      • cd oracledb_exporter.0.2.2.linux-amd64
    • 启动脚本 start-exporter.sh(注意替换 ORACLE_HOME、监听与服务名):
      • #!/bin/bash ORACLE_BASE=/u01/app/oracle export ORACLE_HOME=$ORACLE_BASE/product/19.0.0/db_1 export PATH=$PATH:$ORACLE_HOME/bin export NLS_LANG=‘SIMPLIFIED CHINESE_CHINA’.ZHS16GBK export DEFAULT_METRICS=/usr/local/oracledb_exporter-0.2.2.linux-amd64/default-metrics.toml export DATA_SOURCE_NAME=exporter/ExP0rt3r@//oracle_ip:1521/orcl export LD_LIBRARY_PATH=$ORACLE_HOME/lib exec /usr/local/oracledb_exporter-0.2.2.linux-amd64/oracledb_exporter
        –default.metrics=$DEFAULT_METRICS
    • 验证:curl http://localhost:9161/metrics
    • systemd 服务(/etc/systemd/system/oracledb_exporter.service):
      • [Unit] Description=oracledb_exporter After=network.target [Service] Type=simple ExecStart=/usr/local/oracledb_exporter-0.2.2.linux-amd64/start-exporter.sh User=oracle [Install] WantedBy=multi-user.target
      • systemctl daemon-reload & & systemctl enable --now oracledb_exporter
  • 配置 Prometheus(/etc/prometheus/prometheus.yml):
      • job_name: ‘oracle’ static_configs:
        • targets: [‘exporter_ip:9161’]
  • Grafana 可视化:导入官方模板(如 111213333),按需调整变量与阈值。

三 Zabbix 与 Nagios 方案

  • Zabbix + Orabbix(推荐批量 Oracle 监控)
    • 在被监控端部署 Orabbix(Java 代理),配置 JDBC/监控账号,自动发现 实例、表空间、ASM、归档 等;Zabbix Server 端导入模板后即可出图与告警。适合多实例、多库统一纳管。
  • Nagios + NRPE(轻量可用)
    • 在数据库主机安装 NRPE,以 oracle 用户运行检查脚本;在 nrpe.cfg 中定义命令(示例):
      • command[check_oracle_tns]=/usr/local/nagios/libexec/check_oracle --tns orcl
      • command[check_oracle_db]=/usr/local/nagios/libexec/check_oracle --db orcl
      • command[check_oracle_login]=/usr/local/nagios/libexec/check_oracle --login orcl
      • command[check_oracle_cache]=/usr/local/nagios/libexec/check_oracle --cache orcl system pwd 80 90
      • command[check_oracle_tablespace]=/usr/local/nagios/libexec/check_oracle --tablespace orcl system pwd tab 90 80
    • 服务端通过 check_nrpe 调用并配置告警策略。

四 命令行与系统层监控

  • 监听与连接
    • 监听状态:lsnrctl status;启动:lsnrctl start
    • 端口连通:ss -lntp | grep 1521 或 netstat -tlnp | grep 1521
  • 进程与资源
    • 数据库进程:ps -ef | grep ora_
    • 资源使用:top/htop、vmstat、iostat -xz 1、sar、dstat、nmon
  • Oracle 性能工具
    • 实时会话/等待/SQL:oratop(需单独安装)
    • 性能诊断:AWR/ASH/SQL Plan Baselines(需授权并定期快照)

五 关键监控指标与告警阈值建议

  • 可用性:监听状态(LISTENER 是否 UP)、实例状态(OPEN)、登录连通性(ORA- 错误计数)
  • 资源:CPU 利用率、内存使用率、I/O 等待(await、svctm)、网络吞吐
  • 数据库会话:当前会话数/最大会话数、阻塞会话、长事务
  • 存储:表空间使用率(建议阈值 ≥80% 预警、≥90% 严重)、归档空间、ASM 磁盘组使用
  • SQL 与等待:TOP SQL(逻辑/物理读、执行时间)、非空闲等待事件(如 db file sequential read、log file sync)

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: oracle在centos上如何监控
本文地址: https://pptw.com/jishu/788002.html
centos oracle配置安全策略 centos oracle性能如何提升

游客 回复需填写必要信息