Orabbix简介说明

orabbix是一个用来监控oracle数据库性能的zabbix插件工具,通过安装在被监控服务器上客户端上收集数据并传给zabbix服务器端,然后通过调用图形显示。具有以下功能:

  • 数据库版本
  • 归档文件
  • 等待的事件(如文件的I/O,单块的读,多块的读,直接读,SQLNet消息,控制文件I/O,日志写等)
  • HitRatio(监控Hit Ratio的触发,表/存储过程,SQLArea,Body)
  • 逻辑I/O(当前读操作,持续的读操作,块的更改)
  • PGA
  • SGA(固定的缓冲,JAVApool,Large Pool,Log Buffer,Shared Pool,Buffer Cache)
  • 物理I/O(重写操作,数据文件写操作,数据文件读操作)
  • SharePool(PoolDictionary Cache, Pool Free Memory, Library Cache,Sql Area ,Misc.)
  • Pin Hit Ratio(monitor Hit Ratio on Trigger, Tables/Procedures, SQLArea,Body)
  • Session/Processes(monitor Sessions and processes)
  • Session (ActiveSession, Inactive Sessions, System Session)

环境

Oracle Server: 192.168.88.53:1521:orcl
Zabbix Server: 192.168.88.56:10050
Zabbix Agent: 192.168.88.56:10051
Orabbix: 192.168.88.56
jdk 1.8: 192.168.88.56

1,下载并安装jdk8

如果已经安装了java,这步可以跳过。

下载地址

http://www.oracle.com/technetwork/java/javase/downloads/index.html

解压安装,这里以jdk-8u152-linux-x64版本为例

mkdir -p /usr/local/java
tar -zxvf jdk-8u152-linux-x64.tar.gz -C /usr/local/java

2,创建oracle监控帐号,在oracle的sqlplus窗口里面执行:

CREATE  USER ZABBIX_MONITOR IDENTIFIED BY zabbix456
DEFAULT TABLESPACE USERS
TEMPORARY TABLESPACE TEMP
PROFILE DEFAULT
ACCOUNT UNLOCK; GRANT CONNECT TO ZABBIX_MONITOR;
GRANT RESOURCE TO ZABBIX_MONITOR;
ALTER USER ZABBIX_MONITOR DEFAULT ROLE ALL; GRANT SELECT ANY TABLE TO ZABBIX_MONITOR;
GRANT CREATE SESSION TO ZABBIX_MONITOR;
GRANT SELECT ANY DICTIONARY TO ZABBIX_MONITOR;
GRANT UNLIMITED TABLESPACE TO ZABBIX_MONITOR;
GRANT SELECT ANY DICTIONARY TO ZABBIX_MONITOR;

if you need an User (ZABBIX) for Orabbix with the minimum grants available

GRANT ALTER SESSION TO ZABBIX_MONITOR;
GRANT CREATE SESSION TO ZABBIX_MONITOR;
GRANT CONNECT TO ZABBIX_MONITOR;
ALTER USER ZABBIX_MONITOR DEFAULT ROLE ALL;
GRANT SELECT ON V_$INSTANCE TO ZABBIX_MONITOR;
GRANT SELECT ON DBA_USERS TO ZABBIX_MONITOR;
GRANT SELECT ON V_$LOG_HISTORY TO ZABBIX_MONITOR;
GRANT SELECT ON V_$PARAMETER TO ZABBIX_MONITOR;
GRANT SELECT ON SYS.DBA_AUDIT_SESSION TO ZABBIX_MONITOR;
GRANT SELECT ON V_$LOCK TO ZABBIX_MONITOR;
GRANT SELECT ON DBA_REGISTRY TO ZABBIX_MONITOR;
GRANT SELECT ON V_$LIBRARYCACHE TO ZABBIX_MONITOR;
GRANT SELECT ON V_$SYSSTAT TO ZABBIX_MONITOR;
GRANT SELECT ON V_$PARAMETER TO ZABBIX_MONITOR;
GRANT SELECT ON V_$LATCH TO ZABBIX_MONITOR;
GRANT SELECT ON V_$PGASTAT TO ZABBIX_MONITOR;
GRANT SELECT ON V_$SGASTAT TO ZABBIX_MONITOR;
GRANT SELECT ON V_$LIBRARYCACHE TO ZABBIX_MONITOR;
GRANT SELECT ON V_$PROCESS TO ZABBIX_MONITOR;
GRANT SELECT ON DBA_DATA_FILES TO ZABBIX_MONITOR;
GRANT SELECT ON DBA_TEMP_FILES TO ZABBIX_MONITOR;
GRANT SELECT ON DBA_FREE_SPACE TO ZABBIX_MONITOR;
GRANT SELECT ON V_$SYSTEM_EVENT TO ZABBIX_MONITOR;

如果是oracle11g的数据库版本,还需要执行下面的语句开放ACL的访问控制,否则在监控的过程中有部份内容无法正常显示(例于数据库版本,数据库文件大小等),而且orabbix的日志显示中也会有错误提示。注意如果创建的账号是小写,以下的ZABBIX_MONITOR需要大写。最好还是大写吧。

exec dbms_network_acl_admin.create_acl(acl => 'resolve.xml',description=> 'resolve acl', principal =>'ZABBIX_MONITOR', is_grant => true, privilege => 'resolve');

exec dbms_network_acl_admin.assign_acl(acl => 'resolve.xml', host =>'*');

commit;

3,安装部署orabbix

其实orabbix只需要安装在一台服务器即可,我就选择安装在Zabbix Server上,当然上面的jdk是为orabbix服务的,因为orabbix就是一个oracle客户端去查找oracle中的数据,然后传给zabbix,安装orabbix:

下载:

mkdir -p /usr/local/orabbix
cd /usr/local/orabbix
wget http://nchc.dl.sourceforge.net/project/orabbix/orabbix-1.2.3.zip

安装:

unzip orabbix-1.2.3.zip
chmod +x run.sh
cp init.d/orabbix /etc/init.d/
chmod +x /etc/init.d/orabbix
sed -i 's#/opt/orabbix#/usr/local/orabbix#g' /etc/init.d/orabbix
# 根据实际java路径修改
sed -i 's#java#/usr/local/java/jdk1.8.0_152/bin/java#g' /usr/local/orabbix/run.sh

4,配置config. Props:

orabbix所有的配置文件都在conf目录中,需要将默认的配置文件config.props.sample复制一份后再进行修改和配置。

cd /usr/local/orabbix/conf
cp config.props.sample config.props
vim config.props

以下是修改后和去注释后的配置

ZabbixServerList=ZabbixServer1

ZabbixServer1.Address=192.168.88.56
ZabbixServer1.Port=10051 OrabbixDaemon.PidFile=./logs/orabbix.pid
OrabbixDaemon.Sleep=300
OrabbixDaemon.MaxThreadNumber=100 DatabaseList=testora DatabaseList.MaxActive=10
DatabaseList.MaxWait=100
DatabaseList.MaxIdle=1 testora.Url=jdbc:oracle:thin:@192.168.88.53:1521:orcl
testora.User=zabbix_monitor
testora.Password=zabbix456
testora.MaxActive=10
testora.MaxWait=100
testora.MaxIdle=1
testora.QueryListFile=./conf/query.props

PS:需要注意的是DatabaseList=testora指的是被监控服务器的名称,该名称要和zabbix server界面中的机器名称保持一致,该配置文件中后续所引用的设定都以该名称为准。

testora.Url=jdbc:oracle:thin:@192.168.88.53:1521:orcl指定的是被监控服务器的连接信息(例如采用jdbc的联接方式,服务器地址是192.168.88.53,oracle的端口是1521,orcl指的是数据库的实例名称)

5,启动orabbix服务

启动orabbix

service orabbix start
Starting Orabbix service:

查看启动的orabbix进程

ps aux |grep orabbix

root      1259  0.3  0.6 12112256 203324 pts/1 Sl   16:02   0:13 /usr/local/java/jdk1.8.0_152/bin/java -Duser.language=en -Duser.country=US -Dlog4j.configuration=./conf/log4j.properties -cp lib/commons-codec-1.4.jar:lib/commons-dbcp-1.4.jar:lib/commons-lang-2.5.jar:lib/commons-logging-1.1.1.jar:lib/commons-pool-1.5.4.jar:lib/hsqldb.jar:lib/log4j-1.2.15.jar:lib/ojdbc6.jar:.:./orabbix-1.2.3.jar com.smartmarmot.orabbix.bootstrap start ./conf/config.props

6,界面导入oracle模版文件

导入时应该注意模板里面的host的name属性,group的属性值是否与zabbix已存在的设置有冲突,如果导入失败,可能是冲突造成的。把这两个属性改一下名即可。

参考

http://www.smartmarmot.com/wiki/index.php?title=Orabbix

http://blog.csdn.net/mchdba/article/details/51366790

Orabbix监控Oracle 11g的更多相关文章

  1. zabbix利用orabbix监控oracle

    Orabbix 是一个用来监控 Oracle 数据库实例的 Zabbix 插件.(插件安装在zabbix-server端) 下载地址:http://www.smartmarmot.com/produc ...

  2. Zabbix通过Orabbix监控Oracle数据库

    一.背景 公司业务使用的是一直Oracle数据库,因为多次出现表空间满的时候不能及时发现,每次都是业务组的人员通知处理,这样下来DBA这边就比较被动,所以老大要求监控表空间剩余大小并且当剩余过小时能够 ...

  3. orabbix监控oracle

    Orabbix 是一个用来监控 Oracle 数据库实例的 Zabbix 插件.下载地址: http://www.smartmarmot.com/product/orabbix/download/ O ...

  4. Zabbix+Orabbix监控oracle数据库表空间

    Orabbix 是设计用来为 zabbix 监控 Oracle 数据库的插件,它提供多层次的监控,包括可用性和服务器性能指标. 它提供了从众多 oracle 实例采集数据的有效机制,进而提供此信息的监 ...

  5. 亲测的orabbix监控Oracle过程

    网上教程很多,但普遍较老,担心新版本的变化,于是亲自测试了一下,记录过程如下: 一.环境 Centos7.3 192.168.56.104 Oracle安装在windows下,192.168.56.1 ...

  6. zabbix 用 LLD 完全自动化监控 Oracle

    文章转载自:http://mp.weixin.qq.com/s?__biz=MzA3MzYwNjQ3NA==&mid=2651296856&idx=1&sn=2bdf78071 ...

  7. zabbix之 orabbix模板监控oracle

    一.Orabbix简介 Orabbix是设计用来为zabbix监控Oracle的数据库的插件,它提供多层次的监控,包括可用性和服务器性能的指标.它提供了从众多Oracle实例采集的有效机制,进而提供此 ...

  8. Oracle 11g实时SQL监控 v$sql_monitor

    Oracle 11g实时SQL监控: 前面提到,在Oracle Database 11g中,v$session视图增加了一些新的字段,这其中包括SQL_EXEC_START和SQL_EXEC_ID, ...

  9. orabbix插件监控oracle表空间问题

    我们安装好orabbix插件后,查看Tablespaces监控项是发项值为none,第一反应是没监控成功,其实不然. 1.我们打开orabbix监控项参数的路径,下面为Tablespaces的sql代 ...

随机推荐

  1. 冰川时代5:星际碰撞Ice Age: Collision Course迅雷下载

    影片讲述松鼠奎特为了追松果,偶然引发了宇宙事件,改变并威胁着冰川时代的世界.为了拯救自己,话唠树懒希德.猛犸象曼尼.剑齿虎迪亚哥,以及别的动物群族必须离开家园,踏上了他们充满喜剧色彩的冒险旅程,他们来 ...

  2. 手游开发Android平台周边工具介绍

    1.渠道接入 主要是需要接入各平台的登录.充值接口,各家SDK又不统一,Android渠道都是鱼龙混杂,就算小渠道你看不上,但量多了,加起来也还可观,所以大家都拿出吃奶的尽去铺渠道.国内几大主要的An ...

  3. 《SEO教程:搜索引擎优化入门与进阶(第3版)》

    <SEO教程:搜索引擎优化入门与进阶(第3版)> 基本信息 作者: 吴泽欣 丛书名: 图灵原创 出版社:人民邮电出版社 ISBN:9787115357014 上架时间:2014-7-1 出 ...

  4. Effective Java - Item 1: Consider static factory methods instead of constructors

    考虑使用静态工厂方法来替代构造方法, 这样的做的好处有四点. 1. 更好的表意 有的构造方法实际上有特殊的含义, 使用静态工厂方法能更好的表达出他的意思. 例如 BigInteger(int, int ...

  5. Spring RestTemplate中几种常见的请求方式GET请求 POST请求 PUT请求 DELETE请求

    Spring RestTemplate中几种常见的请求方式 原文地址: https://blog.csdn.net/u012702547/article/details/77917939   版权声明 ...

  6. C/C++ 关于 for循环 的第二个表达式右侧非常量的时候

    废话不多说,直接看代码: #include<stdio.h> int main(){ ; ;z<zmax;z++){ printf("i=%d z=%d\n",i ...

  7. emouse思·睿—评论与观点整理之三

    虽说我主要做的硬件,平时的兴趣爱好比较关注移动互联网,混迹于虎嗅.爱范儿.雷锋网.36Kr.cnBeta.瘾科技.i黑马.TechWeb等这类科技以及创业媒体,遗憾的是系统的去写的并不多,好在还算充分 ...

  8. 第十一章 dubbo通信框架-netty4

    netty4是2.5.6引入的,2.5.6之前的netty用的是netty3.在dubbo源码中相较于netty3,添加netty4主要仅仅改了两个类:NettyServer,NettyClient. ...

  9. STM32启动文件深度解析

    STM32启动过程全面解析,包括启动过程的介绍.启动代码的陈列以及深入解析.相对于ARM上一代的主流ARM7/ARM9内核架构,新一代Cortex内核架构的启动方式有了比较大的变化.ARM7/ARM9 ...

  10. c#中的数组、ArrayList、List区别【转】

    首先说明C#中的Array类:Array 类是 C# 中所有数组的基类,它是在 System 命名空间中定义.Array 类提供了各种用于数组的属性和方法.关于Array类的一些属性及方法详见博文:C ...