Zabbix 通过自动发现监控Oracle表空间
1、得到表空间的使用情况
[root@oracle scripts]# su - oracle
[oracle@oracle ~]$ more check_tablespace.sh
#!/bin/bash
# tablespace usagep check
source ~/.bash_profile
function check {
sqlplus -S "/ as sysdba" << EOF
set linesize 200
set pagesize 200
spool /tmp/tablespace.log
select a.tablespace_name, total, free,(total-free) as usage from
(select tablespace_name, sum(bytes)/1024/1024 as total from dba_data_files group by tablespace_name) a,
(select tablespace_name, sum(bytes)/1024/1024 as free from dba_free_space group by tablespace_name) b
where a.tablespace_name = b.tablespace_name;
spool off
set linesize 100
set pagesize 100
spool
select tablespace_name,autoextensible from dba_data_files;
spool off
quit
EOF
};check &>/dev/null
2、通过这个脚本我们可以得到表空间的使用情况,并记录在/tmp/tablespace.log中
[root@oracle ~]# cat /tmp/tablespace.log
TABLESPACE_NAME TOTAL FREE USAGE
------------------------------ ---------- ---------- ----------