这里使用的是orabbix
下载地址https://sourceforge.net/projects/orabbix/files/orabbix-1.2.3.zip/download
mkdir /opt/orabbix
cd /opt/orabbix
chmod a+x /opt/orabbix -R
将按照包上传到当前目录下、因为数据是默认调用这个地方的脚本
unzip orabbix-src-1.2.3.zip
这个是文件的目录树,我们需要修改的文件是在conf下。然后重名文件名
cp /opt/orabbix/conf/config.props.sample /opt/orabbix/conf/config.props
编辑配置文件
我们这里可以在本地的hosts文件中添加下
第一处修改是指你的zabbix主机的名字
第二处我们修改我们的zabbix server的IP
第三处我们修改我们的zabbix port端口 10051
第四处我们修改成我们Oracle主机的名字、记住这里如果有中划线(-)可能无法识别,请去掉。
第五处我们修改前面需要加上我们设置的DatabaseList的主机名,后面是ip:端口/表名
第六处我们修改修改我们的用户名,这个zabbix待会我们要在数据库中创建
第七处我们修改我们zabbix的密码
第八处这里我们只要修改成前面的主机名就可以了。
目前我们修改完配置文件。
后面我们给zabbix授权
CREATE USER ZABBIX IDENTIFIED BY zabbix DEFAULT TABLESPACE SYSTEM TEMPORARY TABLESPACE TEMP PROFILE DEFAULT ACCOUNT UNLOCK;
GRANT CONNECT TO ZABBIX;
GRANT RESOURCE TO ZABBIX;
ALTER USER ZABBIX DEFAULT ROLE ALL;
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;
GRANT ALTER SESSION TO zabbix;
GRANT CREATE SESSION TO zabbix;
GRANT CONNECT TO zabbix;
ALTER USER zabbix DEFAULT ROLE ALL;
GRANT SELECT ON V_$INSTANCE TO zabbix;
GRANT SELECT ON DBA_USERS TO zabbix;
GRANT SELECT ON V_$LOG_HISTORY TO zabbix;
GRANT SELECT ON V_$LOG TO zabbix;
GRANT SELECT ON V_$PARAMETER TO zabbix;
GRANT SELECT ON SYS.DBA_AUDIT_SESSION TO zabbix;
GRANT SELECT ON V_$LOCK TO zabbix;
GRANT SELECT ON DBA_REGISTRY TO zabbix;
GRANT SELECT ON V_$LIBRARYCACHE TO zabbix;
GRANT SELECT ON V_$SYSSTAT TO zabbix;
GRANT SELECT ON V_$PARAMETER TO zabbix;
GRANT SELECT ON V_$LATCH TO zabbix;
GRANT SELECT ON V_$PGASTAT TO zabbix;
GRANT SELECT ON V_$SGASTAT TO zabbix;
GRANT SELECT ON V_$LIBRARYCACHE TO zabbix;
GRANT SELECT ON V_$PROCESS TO zabbix;
GRANT SELECT ON DBA_DATA_FILES TO zabbix;
GRANT SELECT ON DBA_TEMP_FILES TO zabbix;
GRANT SELECT ON DBA_FREE_SPACE TO zabbix;
GRANT SELECT ON V_$SYSTEM_EVENT TO zabbix;
GRANT SELECT ON V_$locked_object TO zabbix;
GRANT SELECT ON dba_objects TO zabbix;
GRANT SELECT ON dba_tablespaces TO zabbix;
GRANT SELECT ON v_$session TO zabbix;
这样我们就做完了授权。
然后启动orabbix服务
cp -a /opt/orabbix/init.d/orabbix /etc/init.d/orabbix
chmod 755 /etc/init.d/orabbix
/etc/init.d/orabbix start
在安装调试过程遇见的错
1、
遇见这个报错、需要我们在config.props中将datebaseList的主机名中的中划线去掉。
或者检查本地的java版本是否正常。
2、
遇见这个报错、需要我们在配置DB.Url的时候写上port、IP:Port
3、
遇见这个报错、请检查我们我们刚刚授权的表是否为orcl。
检查方法:sqlplus "/as sysdba"
select username,password from dba_users;
请检查是否有刚刚授权的zabbix用户、如果没有请检查当前使用的容器
selectsys_context ('USERENV','CON_NAME')fromdual;
4、
解决方法:
1、查看Oracle 12C的版本
select * from v$version;
2、我们可以通过ALTER SESSION SET CONTAINER 指定其他容器
select con_id,dbid,NAME,OPEN_MODE from v$pdbs;
3、将Pdb open
alter pluggable database pdborcl open;
4、查看容器
select con_id,dbid,NAME,OPEN_MODE from v$pdbs;
5、切换容器到pdb
alter session set container=PDBORCL;
6、查看当前使用容器
select sys_context ('USERENV', 'CON_NAME') from dual;
这个时候在进行用户的创建。
仅供参考