orabbix监控oracle数据库状态例子

1 下载

下载地址:
http://www.smartmarmot.com/product/orabbix/download/

2 授予文件可执行的权限

#chmod +x /opt/orabbix -R
#chmod +x /opt/orabbix/run.sh
3 创建一个名为config.props文件,有模板可以参考。

#cp /opt/orabbix/conf/config.props.sample config.props
下面是我的一个配置:
注意DatabaseList大小写敏感,并且与zabbix上面的hostname一致。

[root@iZ23snm97y9Z orabbix]# cat conf/config.props
#comma separed list of Zabbix servers
ZabbixServerList=ZabbixServer1

ZabbixServer1.Address=127.0.0.1
ZabbixServer1.Port=10051

#ZabbixServer2.Address=IP_ADDRESS_OF_ZABBIX_SERVER
#ZabbixServer2.Port=PORT_OF_ZABBIX_SERVER

#pidFile
OrabbixDaemon.PidFile=./logs/orabbix.pid
#frequency of item's refresh
OrabbixDaemon.Sleep=300
#MaxThreadNumber should be >= than the number of your databases
OrabbixDaemon.MaxThreadNumber=100

#put here your databases in a comma separated list
DatabaseList=DB68

#Configuration of Connection pool
#if not specified Orabbis is going to use default values (hardcoded)
#Maximum number of active connection inside pool
DatabaseList.MaxActive=10
#The maximum number of milliseconds that the pool will wait
#(when there are no available connections) for a connection to be returned
#before throwing an exception, or <= 0 to wait indefinitely.
DatabaseList.MaxWait=100
DatabaseList.MaxIdle=1

#define here your connection string for each database
DB68.Url=jdbc:oracle:thin:@10.168.xx.xx:1521:test
DB68.User=zabbix
DB68.Password=zabbix
#Those values are optionals if not specified Orabbix is going to use the general values
DB68.MaxActive=10
DB68.MaxWait=100
DB68.MaxIdle=1
DB68.QueryListFile=./conf/query.props

#DB2.Url=jdbc:oracle:thin:@server2.domain.example.com:<LISTENER_PORT>:DB2
#DB2.User=zabbix
#DB2.Password=zabbix_password
#DB2.QueryListFile=./conf/query.props
#
#DB3.Url=jdbc:oracle:thin:@server3.domain.example.com:<LISTENER_PORT>:DB3
#DB3.User=zabbix
#DB3.Password=zabbix_password
#DB3.QueryListFile=./conf/query.props
#
#

4 在oracle数据库上面添加权限:

 CREATE USER ZABBIX
 IDENTIFIED BY zabbix
 DEFAULT TABLESPACE SYSTEM
 TEMPORARY TABLESPACE TEMP
 PROFILE DEFAULT
 ACCOUNT UNLOCK;
 – 2 Roles for ZABBIX
 GRANT CONNECT TO ZABBIX;
 GRANT RESOURCE TO ZABBIX;
 ALTER USER ZABBIX DEFAULT ROLE ALL;
 – 5 System Privileges for ZABBIX
 GRANT SELECT ANY TABLE TO ZABBIX;
 GRANT CREATE SESSION TO ZABBIX;
 GRANT SELECT ANY DICTIONARY TO ZABBIX;
 GRANT UNLIMITED TABLESPACE TO ZABBIX;
 GRANT SELECT ANY DICTIONARY TO ZABBIX;
 ```

 11g的话执行一下存储过程

 ```
  exec dbms_network_acl_admin.create_acl(acl => 'resolve.xml',description => 'resolve acl', principal =>'ZABBIX', is_grant => true, privilege => 'resolve');
 exec dbms_network_acl_admin.assign_acl(acl => 'resolve.xml', host =>'*');
 commit;

用下面的语句来测试:

select utl_inaddr.get_host_name('127.0.0.1') from dual;

5 加入开机自启动:

chkconfig --add orabbix
1
6 启动orabbix

/etc/init.d/orabbix start
1
观察logs/orabbix.log
出现下面的输出代表orabbix运行正常:

 2015-05-08 10:57:44,343 [pool-1-thread-1] INFO  Orabbix - Done with dbJob on da
tabase DB68 QueryList elapsed time 1125 ms
1
2
否则则要看具体报错信息,一般可能是权限不对等引起连不上数据库。
orabbix 是通过java程序连oracle,所以需要安装java环境。

7 zabbix上面导入xml的模板

在template目录下面有Orabbix_export_full.xml ,导入他就ok了。

8 zabbix添加主机

这里要注意的是不用添加linux的模板,只添加刚刚导入的oracle模板即可。

9 End

至此,oracle添加完毕,可以用zabbix的图里看到oracle的运行状态。图就不截了

时间: 2024-10-02 10:02:07

orabbix监控oracle数据库状态例子的相关文章

linux下Cacti监控MySQL数据库状态例子

1.监控脚本下载及配置 wget http://mysql-cacti-templates.googlecode.com/files/better-cacti-templates-1.1.8.tar.gz tar zxvf better-cacti-templates-1.1.8.tar.gz cd better-cacti-templates-1.1.8 cp scripts/ss_get_mysql_stats.php /var/www/html/cacti/scripts/ 监控mysql

8个DBA最常用的监控Oracle数据库的常用shell脚本--转

一.8个重要的脚本来监控Oracle数据库: 1.检查实例的可用性 2.检查监听器的可用性 3.检查alert日志文件中的错误信息4.在存放log文件的地方满以前清空旧的log文件 5.分析table和index以获得更好的性能 6.检查表空间的使用情况 7.找出无效的对象 8.监控用户和事务 二.DBA需要的Unix基本知识 基本的UNIX命令,以下是一些常用的Unix命令: ps--显示进程 grep--搜索文件中的某种文本模式 mailx--读取或者发送mail cat--连接文件或者显示

check_oracle_health 1.7.1发布 监控Oracle数据库插件

check_oracle_health 1.7.1这个版本增加了提交选项.增加了不可写状态文件的错误处理.修复了statefilesdir和大写字母的错误.增强过时的统计信息和无效的对象模式.该插件现在可以用OMD框架. check_oracle_health 是一个Nagios用来监控Oracle数据库运行状态的插件.可监控的内容包括:连接时间.SGA 数据缓冲区的使用率.命中率以及可用空间.PGA 内存排序的命中率.表空间的使用率.表空间碎片.表空间IO瓶颈.无效对象以及其他很多方面的htt

Asp.Net连接Oracle数据库的例子

asp.net|oracle|数据|数据库 Asp.Net连接Oracle数据库的例子 刚接触asp.net,发现在 .Net Framework 1.1版中,直接就有System.Data.OracleClient类库, 用于访问Oracle数据库,不过我这里好像还是1.0 版本的,不支持该对象. 这里是一个通过oledb访问数据库的例子,与在asp中的差不多,能够访问大多数的数据库,比如access之类的. <%@ Page Language="VB" %> <%

怎么监控oracle数据库表和表空间

  怎么监控oracle数据库表和表空间的现状 declare unf number; unfb number; fs1 number; fs1b number; fs2 number; fs2b number; fs3 number; fs3b number; fs4 number; fs4b number; full number; fullb number; begin dbms_space.space_usage('&1', '&2', 'TABLE', unf, unfb, fs

zabbix监控redis数据库状态两种方法

方法一,zabbix监控redis 1.导入模板 同样,模板我已上传到 github项目 上 .直接下载,通过下面的步骤导入模板:点击configuration ----> templates ------> import -------> 导入下载的xml文件 . 2.客户端key配置 在被监控的主机上,打开/etc/zabbix/zabbix_agentd.conf 配置文件,在最后一行加入: UserParameter=redis_stats[*],redis-cli -h 127

check_oracle_health 1.7.3发布 监控Oracle数据库插件

check_oracle_health 1.7.3此版本添加了新的模式:sga-library-cache-pinhit-ratio, sga-library-cache-gethit-ratio和sga-library-cache-reloads. SQL模式现在可以正确的处理丢失表的DML SQL错误等等. check_oracle_health 是一个Nagios用来监控Oracle数据库运行状态的插件.可监控的内容包括:连接时间.SGA 数据缓冲区的使用率.命中率以及可用空间.PGA 内

oracle数据库存储过程例子

存储过程:一段程序,用于改变数据库对象的状态,可以包含一个或多个行为,往往是将一个表的记录经过处理后放到另一个表. 1.基本语法: CREATE [OR REPLACE] PROCEDURE procedure_name [(parameter_name [IN | OUT | IN OUT] TYPE[,....])] {IS | AS }   [LOCAL declarations] BEGIN   executable statements; [EXCEPTION   exception_

归档—监控ORACLE数据库告警日志

ORACLE的告警日志里面包含许多有用的信息,尤其是一些ORACLE的ORA错误信息,所以有必要及时归档.监控数据库告警日志的ORA错误,及时提醒数据库管理员DBA处理这些错误信息,那么我们首先来看看告警日志的内容片断: Thread 1 advanced to log sequence 37749 (LGWR switch) Current log# 6 seq# 37749 mem# 0: /u01/oradata/SCM2/redo06.log Thu Jun 27 15:02:30 20