[Oracle数据库监控] Oracle数据库表空间监控脚本
#!/bin/shsource ~/.bash_profile
#定义变量
v_datetime=`date +"%Y-%m-%d %H:%M:%S"`
v_username='oracle'
v_hostname=`hostname`
v_dbname='DB01'
#表空间大小报警阀值,单位:M
v_free_space=5000
#表空间使用百分比报警阀值
v_used_rate=85
#发送人
v_sendmail='XXXXX@139.com'
v_mailname='XXXXX@139.com'
v_password='XXXXX'
#smtp服务器IP或域名:smtp.qq.com
v_smtpserver='XXX.XXX.XXX.XXX'
#接收人,多个联系人用空格分开
v_receivemail='XXXXX@139.com XXXXX@163.com'
#路径
v_path="/home/${v_username}/scripts"
v_logfile_temp="${v_path}/tablespace_health_report.temp"
sqlplus -S / as sysdba > ${v_path}/tablespace_health_report.log
echo "HOSTNAME: ${v_hostname}" >> ${v_path}/tablespace_health_report.log
echo "DBNAME: ${v_dbname}" >> ${v_path}/tablespace_health_report.log
echo "############################" >> ${v_path}/tablespace_health_report.log
echo "数据库${v_dbname}表空间告警:" >> ${v_path}/tablespace_health_report.log
cat ${v_logfile_temp} >> ${v_path}/tablespace_health_report.log
${v_path}/sendEmail -f ${v_sendmail} -t ${v_receivemail} -s ${v_smtpserver} -u "数据库${v_dbname}表空间报警邮件 - ${v_datetime}" -xu ${v_mailname} -xp ${v_password} -o message-content-type=text -o message- message-file=${v_path}/tablespace_health_report.log -l ${v_path}/check_tablespace_health_report.log
rm ${v_logfile_temp}
fi
页:
[1]