SHELL脚本学习-自动生成AWR报告

自动生成AWR报告,每个小时生成一次。

#编辑脚本:vim awr_auto.sh  #oracle用户下执行
#!/bin/bash 
# 每个小时执行一次,自动生成AWR报告
source ~/.bash_profile
AWR_FORMAT=html
NUM_DAYS=1
ONE_HOUR_AGO=`date -d -1hour +%Y%m%d_%H`
CURRENT_TIME=`date +%H`
MAX_SNAP_ID=`sqlplus -S / as sysdba << EOF
set heading off trimspool on feedback off
SELECT trim(max(SNAP_ID)) FROM DBA_HIST_SNAPSHOT;                 
EOF`
MIN_SNAP_ID=`expr $MAX_SNAP_ID - 1`
AWR_LOG=/tmp/AWR_$ONE_HOUR_AGO-$CURRENT_TIME.html
echo -e "$AWR_FORMAT
$NUM_DAYS
$MIN_SNAP_ID$MAX_SNAP_ID
$AWR_LOG
"|(sqlplus -S / as sysdba @?/rdbms/admin/awrrpt.sql) > /dev/null


#设置执行计划
crontab -e
10 * * * * /opt/awr_auto.sh
原文地址:https://www.cnblogs.com/ctulzq/p/10450775.html