oracle 监控表空间脚本:
自增表空间不在监控范围
每月10号0点至06点不报警
f_check_oracle_tablespaces(){
A='tablespace used exceeding the threshold value!!!'
result=`$con_user << EOF
set colsep' ';
set feedback off;
set heading off;
set pagesize 0;
set termout off;
set trimout on;
set trimspool on;
select tablespace_name from (
(select distinct tablespace_name from dba_data_files where autoextensible='NO' )
MINUS
(select distinct tablespace_name from dba_data_files where autoextensible='YES')
);
exit
EOF`
tablespace_names=`echo $result`
if [ "$tablespace_names" != 'no rows selected' ] ; then
for i in `echo $tablespace_names`
do
result=`$con_user<< EOF
set colsep' ';
set feedback off;
set heading off;
set pagesize 0;
set termout off;
set trimout on;
set trimspool on;
set numf '9999999.99'
select 100 - trunc(NVL(b.free, 0.0) / a.total * 1000) / 10 prc
from (select tablespace_name, sum(bytes) / 1024 / 1024 total
from dba_data_files
group by tablespace_name) A
LEFT OUTER JOIN (select tablespace_name, sum(bytes) / 1024 / 1024 free
from dba_free_space
group by tablespace_name) B
ON a.tablespace_name = b.tablespace_name
WHERE a.tablespace_name = '$i';
exit
EOF`
temp=$(echo $result)
ifExceed=`echo "$temp > $1" | bc`
#eval ${tablespace_name}_USED=$temp
if [ $ifExceed = 1 ] ; then
A="$i-$A"
fi
done
else
A=$A
fi
if [ "$A" = 'tablespace used exceeding the threshold value!!!' ] ; then
echo "all tablespaces are ok! "
exit $STATE_OK
else
#每月10号 0点至6点 表空间监控不报警
day=`date +%F | awk -F'-' '{print $3}'`
hour=`date +%T | awk -F':' '{print $1}'`
if [ $day -eq 10 -a $hour -gt 0 -a $hour -lt 6 ];then
echo "all tablespaces are ok! "
exit $STATE_OK
else
echo "$A"
exit $STATE_CRITICAL
fi
fi
}
oracle数据监控脚本:https://www.modb.pro/download/329752
监控项包含:
单实例监控项:
check_oracle base_module --listener --tns 主机名或IP --SINGLE
check_oracle base_module --db 数据名 --SINGLE
check_oracle support_module --session 800 1000
check_oracle base_module --standby
check_oracle base_module --standby_time
RAC集群监控补充项:
check_oracle base_module --asm -n 主机名或IP -a
check_oracle base_module --listener -n 主机名或IP -l --RAC
check_oracle base_module --vip -n 主机名或IP -v
check_oracle base_module --db -n 主机名或IP -d --RAC
check_oracle base_module --scan_listener -n 主机名或IP -L
check_oracle support_module --asm_free --RAC
check_oracle base_module --scan_vip -n 主机名或IP -V
check_oracle rac_server 主机名或IP
OGG 监控项 (略)
文章推荐
PostgreSQL | URL |
---|---|
《课程笔记:PostgreSQL深入浅出》之 初识PostgreSQL(一) | https://www.modb.pro/db/475817 |
《课程笔记:PostgreSQL深入浅出》之 PostgreSQL源码安装(二) | https://www.modb.pro/db/475933 |
《课程笔记:PostgreSQL深入浅出》之初始化PostgreSQL(三) | https://www.modb.pro/db/479524 |
《课程笔记:PostgreSQL深入浅出》之PSQL管理工具-常用(四) | https://www.modb.pro/db/479560 |
《课程笔记:PostgreSQL深入浅出》之PSQL管理工具-高级命令(四) | https://www.modb.pro/db/479559 |
《课程笔记:PostgreSQL深入浅出》之内存与进程(五) | https://www.modb.pro/db/489936 |
《课程笔记:PostgreSQL深入浅出》之外存&永久存储(六) | https://www.modb.pro/db/502267 |
Oracle: | URL |
《Oracle 自动收集统计信息机制》 | https://www.modb.pro/db/403670 |
《Oracle_索引重建—优化索引碎片》 | https://www.modb.pro/db/399543 |
《DBA_TAB_MODIFICATIONS表的刷新策略测试》 | https://www.modb.pro/db/414692 |
《FY_Recover_Data.dbf》 | https://www.modb.pro/doc/74682 |
《Oracle RAC 集群迁移文件操作.pdf》 | https://www.modb.pro/doc/72985 |
《Oracle Date 字段索引使用测试.dbf》 | https://www.modb.pro/doc/72521 |
《Oracle 诊断案例 :因应用死循环导致的CPU过高》 | https://www.modb.pro/db/483047 |
《Oracle 慢SQL监控脚本》 | https://www.modb.pro/db/479620 |
《Oracle 慢SQL监控测试及监控脚本.pdf》 | https://www.modb.pro/doc/76068 |
《Oracle 脚本实现简单的审计功能》 | https://www.modb.pro/db/450052 |
《记录一起索引rebuild与收集统计信息的事故》 | https://www.modb.pro/db/408934 |
Greenplum: | URL |
《PL/Java.pdf》 | https://www.modb.pro/doc/70867 |
《GP的资源队列.pdf》 | https://www.modb.pro/doc/67644 |
《Greenplum psql客户端免交互执行SQL.pdf》 | https://www.modb.pro/doc/69806 |
最后修改时间:2024-02-04 17:00:51
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。