通过Zabbix监控Oracle 19c数据库的完整配置指南

 更新时间:2024年12月09日 10:56:24   作者:运筹帷幄海洋  
本文将详细介绍如何使用Zabbix配置Oracle 19c数据库监控,包括安装、配置、问题排查等全过程,本指南适合新手独立完成配置,文中通过代码示例讲解的非常详细,需要的朋友可以参考下

1. 环境准备

1.1 系统要求

  • Oracle 19c数据库服务器
  • Zabbix服务器(版本5.0或更高)
  • Zabbix Agent 2

1.2 前提条件

  • Oracle数据库正常运行
  • Zabbix服务器已安装并配置
  • 具有Oracle数据库和服务器的管理员权限

2. 安装Zabbix Agent 2

在Oracle数据库服务器上安装Zabbix Agent 2。

# 添加Zabbix仓库
rpm -Uvh https://repo.zabbix.com/zabbix/5.0/rhel/7/x86_64/zabbix-release-5.0-1.el7.noarch.rpm

# 安装Zabbix Agent 2
yum install zabbix-agent2

# 启动服务并设置开机自启
systemctl start zabbix-agent2
systemctl enable zabbix-agent2

3. 配置Zabbix Agent 2

编辑配置文件 /etc/zabbix/zabbix_agent2.conf

Server=<Zabbix服务器IP>
Hostname=<本机主机名>

重启Zabbix Agent 2服务:

systemctl restart zabbix-agent2

4. 创建Oracle监控用户

以具有管理员权限的用户(如SYS)登录Oracle数据库,执行以下SQL语句:

-- 创建用户
CREATE USER C##zabbix_mon IDENTIFIED BY zabbix
DEFAULT TABLESPACE users
TEMPORARY TABLESPACE temp
QUOTA UNLIMITED ON users
CONTAINER=ALL;

-- 授予基本权限
GRANT CREATE SESSION TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ANY DICTIONARY TO C##zabbix_mon CONTAINER=ALL;

-- 授予特定对象的查询权限
GRANT SELECT ON SYS.DBA_TABLESPACE_USAGE_METRICS TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.DBA_TABLESPACES TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.DBA_USERS TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.DBA_DATA_FILES TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$ACTIVE_SESSION_HISTORY TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$ARCHIVE_DEST TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$ASM_DISKGROUP TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$DATABASE TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$DATAFILE TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$INSTANCE TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$LOG TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$OSSTAT TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$PGASTAT TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$PROCESS TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$SESSION TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$SYSMETRIC TO C##zabbix_mon CONTAINER=ALL;
GRANT SELECT ON SYS.V_$SYSTEM_PARAMETER TO C##zabbix_mon CONTAINER=ALL;

5. 配置Oracle监控

创建文件 /etc/zabbix/zabbix_agent2.d/oracle.conf

Plugins.Oracle.Sessions.cdb1.Uri=tcp://localhost:1521
Plugins.Oracle.Sessions.cdb1.User=C##zabbix_mon
Plugins.Oracle.Sessions.cdb1.Password=zabbix
Plugins.Oracle.Sessions.cdb1.Service=cdb1

6. 配置环境变量

编辑 /etc/systemd/system/zabbix-agent2.service 文件,在 [Service] 部分添加:

Environment="ORACLE_HOME=/u01/app/oracle/product/19.0.0/dbhome_1"
Environment="LD_LIBRARY_PATH=/u01/app/oracle/product/19.0.0/dbhome_1/lib"
Environment="PATH=$PATH:/u01/app/oracle/product/19.0.0/dbhome_1/bin"

重新加载systemd配置并重启服务:

sudo systemctl daemon-reload
sudo systemctl restart zabbix-agent2

7. 在Zabbix Web界面添加主机

  1. 登录Zabbix Web界面
  2. 进入 Configuration -> Hosts
  3. 点击 “Create host”
  4. 填写以下信息:
    • Host name: <Oracle服务器名称>
    • Groups: 选择适当的主机组
    • Interfaces: 添加Agent接口,填写IP地址和端口(默认10050)
  5. 在 “Templates” 中添加 “Template DB Oracle by Zabbix agent 2” 模板
  6. 在 “Macros” 中添加以下宏:
    • {$ORACLE.CONNSTRING} = tcp://localhost:1521
    • {$ORACLE.SERVICE} = cdb1
    • {$ORACLE.USER} = C##zabbix_mon
    • {$ORACLE.PASSWORD} = zabbix
  7. 点击 “Add” 保存

8. 验证监控

  1. 进入 Monitoring -> Latest data
  2. 选择刚添加的Oracle主机
  3. 查看是否有Oracle相关的监控项开始收集数据

9. 常见问题及解决方法

9.1 Zabbix Agent 2无法连接到Oracle

症状:Zabbix Agent 2日志中出现 “Cannot connect to Oracle” 错误。

解决方法

  • 检查Oracle监听器是否正常运行
  • 验证 oracle.conf 中的连接信息是否正确
  • 确保防火墙允许Zabbix Agent 2访问Oracle端口(通常是1521)

9.2 ORA-00000: DPI-1047错误

症状:出现 “ORA-00000: DPI-1047: Cannot locate a 64-bit Oracle client library” 错误。

解决方法

  • 确保正确设置了ORACLE_HOME和LD_LIBRARY_PATH环境变量
  • 检查Oracle客户端库是否为64位版本
  • 重新启动Zabbix Agent 2服务

9.3 权限不足

症状:Zabbix无法收集某些Oracle指标。

解决方法

  • 检查C##zabbix_mon用户是否有足够的权限
  • 可能需要额外授予一些系统视图的SELECT权限

9.4 数据收集延迟

症状:Oracle监控数据更新缓慢。

解决方法

  • 检查Zabbix服务器和Agent的性能
  • 调整数据收集间隔
  • 优化Oracle查询性能

9.5 用户创建失败

症状:创建C##zabbix_mon用户时出错。

解决方法

  • 确保以具有足够权限的用户(如SYS)执行创建用户的SQL语句
  • 检查密码是否符合Oracle的密码策略
  • 确保在正确的容器中执行命令(如果使用多租户架构)

9.6 表空间问题

症状:用户创建成功但无法使用。

解决方法

  • 确保users和temp表空间存在且有足够空间
  • 检查用户的配额设置

10. 结论

通过以上步骤,你应该能够成功配置Zabbix来监控Oracle 19c数据库。记得定期检查监控数据,及时调整配置以满足不断变化的需求。如遇到其他问题,可查阅Zabbix和Oracle的官方文档或寻求社区帮助。

注意事项:

  1. 确保所有密码符合安全策略。
  2. 定期审查和更新监控用户的权限。
  3. 保持Zabbix和Oracle软件的及时更新。
  4. 根据实际需求调整监控项和触发器。

通过细心配置和及时排障,您可以建立一个可靠的Oracle数据库监控系统,为数据库的稳定运行提供有力支持。

以上就是通过Zabbix监控Oracle 19c数据库的完整配置指南的详细内容,更多关于Zabbix监控Oracle 19c的资料请关注脚本之家其它相关文章!

相关文章

  • zabbix 4.04 安装文档教程详解(基于CentOS 7.6)

    zabbix 4.04 安装文档教程详解(基于CentOS 7.6)

    这篇文章主要介绍了基于CentOS 7.6系统zabbix 4.04 安装文档,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值 ,需要的朋友可以参考下
    2020-01-01
  • 获取zabbix上所有主机的IP和主机名的实例代码

    获取zabbix上所有主机的IP和主机名的实例代码

    zabbix([`z&aelig;biks])是一个基于WEB界面的提供分布式系统监视以及网络监视功能的企业级的开源解决方案。这篇文章主要介绍了获取zabbix上所有主机的IP和主机名,需要的朋友可以参考下
    2019-10-10
  • Zabbix如何使用过滤器实现监控

    Zabbix如何使用过滤器实现监控

    这篇文章主要介绍了Zabbix如何使用过滤器实现监控,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-08-08
  • 解决zabbix监控因php问题导致图形界面中文乱码方法

    解决zabbix监控因php问题导致图形界面中文乱码方法

    解决因编译php中添加了-enable-gd-jis-conv选项导致Zabbix监控系统图形界面中文乱码问题,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧
    2019-10-10
  • 基于docker安装zabbix的详细教程

    基于docker安装zabbix的详细教程

    这篇文章主要介绍了基于docker安装zabbix,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2022-06-06
  • centos7安装zabbix 5.0的详细过程

    centos7安装zabbix 5.0的详细过程

    这篇文章主要介绍了centos7安装zabbix 5.0,本文中zabbix使用的是zabbix 5 + postgresql + nginx的组合,结合实例代码给大家介绍的非常详细,需要的朋友可以参考下
    2023-03-03
  • 关于zabbix自定义监控项和触发器问题

    关于zabbix自定义监控项和触发器问题

    这篇文章主要介绍了zabbix自定义监控项和触发器的相关知识,关于监控端口,监控服务,模板的导入和导出问题,本文给大家介绍的非常详细,感兴趣的朋友一起看看吧
    2021-12-12
  • zabbix利用python脚本发送报警邮件的方法

    zabbix利用python脚本发送报警邮件的方法

    这篇文章是是用外部脚本python实现zabbix的报警机制的。对于zabbix3.0此处存在一个小改动,忙活了一天才找到原因哒。下面就来看看详细的介绍吧,有需要的朋友们可以参考借鉴。
    2016-12-12
  • Zabbix邮件报警设置方法

    Zabbix邮件报警设置方法

    这篇文章主要介绍了Zabbix邮件报警设置方法,在Zabbix服务端设置邮件报警,当被监控主机宕机或者达到触发器预设值时,会自动发送报警邮件到指定邮箱
    2014-10-10
  • zabbix部署后常见问题及解决方案

    zabbix部署后常见问题及解决方案

    本文给大家介绍zabbix部署后常见问题及解决方案,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧
    2025-08-08

最新评论