ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 根据快照产生statpack报表的Shell脚本

根据快照产生statpack报表的Shell脚本

原创 Linux操作系统 作者:ljm0211 时间:2012-07-02 11:06:08 0 删除 编辑
产生快照以后,就可以根据快照自动产生报表了,下面是自动产生报表的脚本,并将报表发送到了指定邮箱:
$more spreport.sh
#!/bin/ksh
# creator: piner
# function: get statpack report
date
#设置环境变量
export ORACLE_SID=test
export ORACLE_HOME=/u01/oracle/product/9.2
export NLS_LANG=american_america.zhs16gbk

#设置运行是变量
SQLPLUS=$ORACLE_HOME/bin/sqlplus
LOGFILE=/home/oracle/logs/spreport.txt     #日志文件
REPFILE=/home/oracle/worksh/spreport.lst     #报表文件

#获得最后2个快照点
$SQLPLUS -S perfstat/perfstat <set echo off
set feedback off
set heading off
set pagesize 0
set linesize 1000
set trimspool on
spool $LOGFILE
select snap_id from
(select snap_id from stats\$snapshot where instance_number=1
order by snap_time desc) where rownum<3;
spool off;
set echo on
set feedback on
set heading on
exit
EOF

line1=`tail -1 $LOGFILE`
line2=`head -l $LOGFILE`
echo "line1 is"$line1
echo "line2 is"$line2

#产生报表
rm $REPFILE
$SQLPLUS -S perfstat/perfstat <define begin_snap=$line1
define end_snap=$line2
define report_name=$REPFILE
@?/rdbms/admin/spreport.sql
exit
EOF

#发送邮件
mail -s `date +%Y%m%d`'-'`hostname`spreport test@mail.com < $REPFILE

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/11411056/viewspace-734299/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2009-05-14

  • 博文量
    272
  • 访问量
    436726