Zabbix中怎么监控Oracle数据库表空间
发表于:2025-11-09 作者:千家信息网编辑
千家信息网最后更新 2025年11月09日,本篇文章给大家分享的是有关Zabbix中怎么监控Oracle数据库表空间,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Oracle表空间
千家信息网最后更新 2025年11月09日Zabbix中怎么监控Oracle数据库表空间
本篇文章给大家分享的是有关Zabbix中怎么监控Oracle数据库表空间,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。
Oracle表空间监控
核心数据库10.100.0.20和21表空间已经修改完成,可以正常监控使用率和大小,并邮件告警通知。
修改Oracle数据库表空间监控
创建表空间信息收集脚本:
vim /home/oracle/scripts/check_tablespace.sh
脚本内容如下:
#!/bin/bash # tablespace usagep check source ~/.bash_profile function check { sqlplus -S "/ as sysdba" << EOF set numwidth 20 set linesize 200 set pagesize 200 spool /tmp/ora_tablespace.txt select aa.tablespace_name, round(bb.maxs, 2) "MAX(G)", round(aa.usd, 2) "USED(G)", round((bb.maxs - aa.usd) , 2) "FREE(G)", round(aa.usd / bb.maxs * 100, 2) "USED%" from (Select b.Tablespace_Name, (b.Bytes - Nvl(a.Bytes, 0)) "USD" From (select tablespace_name, sum(bytes) bytes from Dba_Free_Space group by tablespace_name) a, (select tablespace_name, sum(bytes) bytes from Dba_Data_Files group by tablespace_name) b Where b.tablespace_name = a.tablespace_name(+) -- and b.tablespace_name='MAXIMO_DATA' ) aa, (select tablespace_name, sum(case when maxbytes = 0 then user_bytes else maxbytes end) "MAXS" from dba_data_files -- where tablespace_name='MAXIMO_DATA' group by tablespace_name order by tablespace_name) bb where aa.tablespace_name = bb.tablespace_name and aa.tablespace_name not like '%UNDO%' order by 5 desc, 1; spool off set linesize 100 set pagesize 100 spool /tmp/ora_autex.txt select tablespace_name,autoextensible from dba_data_files; spool off quit EOF };check &>/dev/null赋予执行权限
chmod +x /home/oracle/scripts/check_tablespace.sh
配置计划任务(oracle用户)
*/5 * * * * /home/oracle/scripts/check_tablespace.sh
手动执行脚本并查看结果
表空间脚本执行结果
自动发现脚本内容如下:
# cat discovery_oracle_tablespace.sh #!/bin/bash #zabbix discovery oracle tablespace table_spaces=(`cat /tmp/ora_tablespace.txt | sed -e "1,3d" -e "/^$/d" -e "/selected/d" | awk '{print $1}'`) length=${#table_spaces[@]} printf "{\n" printf '\t'"\"data\":[" for ((i=0;i<$length;i++)) do printf "\n\t\t{" printf "\"{#TABLESPACE_NAME}\":\"${table_spaces[$i]}\"}" if [ $i -lt $[$length-1] ];then printf "," fi done printf "\n\t]\n" printf "}\n" 执行结果 # ./discovery_oracle_tablespace.sh { "data":[ {"{#TABLESPACE_NAME}":"EMA"}, {"{#TABLESPACE_NAME}":"SYSAUX"}, {"{#TABLESPACE_NAME}":"MHWEB"}, {"{#TABLESPACE_NAME}":"SYSTEM"}, {"{#TABLESPACE_NAME}":"OGG"}, {"{#TABLESPACE_NAME}":"USERS"}, {"{#TABLESPACE_NAME}":"QDPTTBS"}, {"{#TABLESPACE_NAME}":"UYUN"}, {"{#TABLESPACE_NAME}":"LINKSCAPEH5DB"}, {"{#TABLESPACE_NAME}":"WX_HUANGHE_TBS"} ] }监控项脚本内容如下:
# cat tablespace_check.sh #!/bin/bash # oracle tablespace check CEHCK_TYPE=$1 TABLESPACE_NAME=$2 function usagepre { grep "\b$TABLESPACE_NAME\b" /tmp/ora_tablespace.txt | awk '{printf "%.f\n",$5}' # grep "\b$TABLESPACE_NAME\b" /tmp/ora_tablespace.txt | awk '{printf "%.f\n",$3/$2*100}' } function available { grep "\b$TABLESPACE_NAME\b" /tmp/ora_tablespace.txt | awk '{printf $4}' # grep "\b$TABLESPACE_NAME\b" /tmp/ora_tablespace.txt | awk '{printf ($2-$3)*1024*1024}' } function check { if grep "\b$TABLESPACE_NAME\b" /tmp/ora_autex.txt | awk '{print $2}' | uniq | grep "YES" &>/dev/null;then echo 1 else echo 0 fi } case $CEHCK_TYPE in pre) usagepre ;; fre) available ;; check) check ;; *) echo -e "Usage: $0 [pre|fre|check] [TABLESPACE_NAME]" esacAgent参数配置:
# cat /etc/zabbix/zabbix_agentd.d/oracle_tablespace.conf UserParameter=discovery.oracle.tablespace,/etc/zabbix/scripts/discovery_oracle_tablespace.sh UserParameter=tablespace.check[*],/etc/zabbix/scripts/tablespace_check.sh $1 $2 重启zabbix-agent
主机添加模板
添加自动发现模板
等待一会后查看监控结果:
表空间监控的数据
监控指标图形展示:

这个的告警我就不去模拟了,因为都是生产环境的,下图为4月份的TEMP表空间告警邮件截图:
邮件通知表空间告警
以上就是Zabbix中怎么监控Oracle数据库表空间,小编相信有部分知识点可能是我们日常工作会见到或用到的。希望你能通过这篇文章学到更多知识。更多详情敬请关注行业资讯频道。
空间
监控
脚本
数据
数据库
结果
内容
邮件
更多
模板
知识
篇文章
配置
实用
下图
主机
任务
使用率
信息
参数
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
输赢 杜 错在哪 服务器
学网络安全做最牛的it新贵
法治教育网络安全手抄报
时统服务器的功能
cors服务器测量
上海斑马网络技术有限公司
st芯片软件开发入门
网络安全法规及案例分析
封特网络技术有限公司
联想服务器没有显示
云服务器如何开放80端口
大数据时代数据库安全管理
北京网络技术有限公司法人
软件开发学生用什么电脑
广安数据库项目
服务器租用能上外网吗
学而思网校软件开发岗怎么样
fu数据库同步软件
有线电视网络技术教案
数据库表改字段名
浙江企业软件开发需要多少钱
长春软件开发不错吉网传媒
服务器硬盘存储柜维护
北京钱包互联网科技公司
阿里云数据库php版
喀什新华互联网科技都有哪些
ad 域 服务器管理器
网络安全周宣传策划案
求生之路2怎么用专用服务器
软件开发 工程造价