orabbix監控oracle資料庫,orabbix監控oracle
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 serversZabbixServerList=ZabbixServer1ZabbixServer1.Address=127.0.0.1ZabbixServer1.Port=10051#ZabbixServer2.Address=IP_ADDRESS_OF_ZABBIX_SERVER#ZabbixServer2.Port=PORT_OF_ZABBIX_SERVER#pidFileOrabbixDaemon.PidFile=./logs/orabbix.pid#frequency of item's refreshOrabbixDaemon.Sleep=300#MaxThreadNumber should be >= than the number of your databasesOrabbixDaemon.MaxThreadNumber=100#put here your databases in a comma separated listDatabaseList=DB68#Configuration of Connection pool#if not specified Orabbis is going to use default values (hardcoded)#Maximum number of active connection inside poolDatabaseList.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=100DatabaseList.MaxIdle=1#define here your connection string for each databaseDB68.Url=jdbc:oracle:thin:@10.168.xx.xx:1521:testDB68.User=zabbixDB68.Password=zabbix#Those values are optionals if not specified Orabbix is going to use the general valuesDB68.MaxActive=10DB68.MaxWait=100DB68.MaxIdle=1DB68.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
6 啟動orabbix
/etc/init.d/orabbix start
觀察logs/orabbix.log
出現下面的輸出代表orabbix運行正常:
2015-05-08 10:57:44,343 [pool-1-thread-1] INFO Orabbix - Done with dbJob on database DB68 QueryList elapsed time 1125 ms
否則則要看具體報錯資訊,一般可能是許可權不對等引起連不上資料庫。
orabbix 是通過java程式連oracle,所以需要安裝java環境。
7 zabbix上面匯入xml的模板
在template目錄下面有Orabbix_export_full.xml ,匯入他就ok了。
8 zabbix添加主機
這裡要注意的是不用添加linux的模板,只添加剛剛匯入的oracle模板即可。
9 End
至此,oracle添加完畢,可以用zabbix的圖裡看到oracle的運行狀態。圖就不截了。參考官方wiki
http://www.smartmarmot.com/wiki/index.php/Orabbix
裡面步驟寫的很詳細。英文ok的朋友直接看就行了。