自动生成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