怎么获取AWR的脚本

技术怎么获取AWR的脚本本篇内容介绍了“怎么获取AWR的脚本”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!#!/bin/

本篇内容介绍了"怎么获取AWR的脚本"的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

#!/bin/bash

# byraysuen

#v02。~/.bash_profile

AWR格式=html

NUM_DAYS=2

############################################

#获取指定时间的snapid的函数

############################################

getSnapid(){ 0

BEgin _ SNAP _ ID=` sqlplus-S/assysdba-RAY

setheading trimmpoolonfeedbackoff

从DBA _ HIST _ SNAPSHOTa、v \ \ $ instance中选择trim(SNAP _ ID),其中to _ char(END _ INTERVAL _ TIME,' yymmdhh 34 ')=' $ 1 '和。实例号=b . instance _ number

雷的

END _ SNAP _ ID=` sqlplus-S/assysdba-RAY

setheading trimmpoolonfeedbackoff

从DBA _ HIST _ SNAPSHOTa、v \ \ $ instance中选择trim(SNAP _ ID),其中to _ char(END _ INTERVAL _ TIME,' yyyymmdh 34 ')=' $ 2 '和。实例号=b . instance _ number

雷的

#判断获取的snapid是否为空

if[-z $ { BEgin _ SNAP _ ID }];然后

echo“scriptcanotagevaluidsnapid,pleatertalarighttimefor-b”

exit96

船方不负担装货费用

if[-z $ { BEgin _ SNAP _ ID }];然后

echo“scriptcanotagevaluidsnapid,pleatertararighttimefor-e”

exit96

船方不负担装货费用

BEgin _ SNAP _ ID=` echo $ { BEgin _ SNAP _ ID } | sed的///g ' '

END _ SNAP _ ID=` echo $ { END _ SNAP _ ID } | sed的///g ' '

}

############################################

#获取帮助的函数

############################################

my _ fun(){ 0

回声'概要: '

回声报/GET _ AWR。' sh-bbe gin _ time-eend _ time-nawr _ name '

回声选项:

echo '-b specificyatimeforbegintimefor,formatyyyymmddhh34 '

' echo '-指定一个specifyatimeforbegintimeofor,formatyyyymmddhh34 '

"回声“-n指定

 name for name of awr"
echo "EXAMPLE:"
echo " ./GET_AWR.SH -b 2019051708 -e 2019051709 -n test"
echo " ./GET_AWR.sh -b \`date +'%Y%m%d18' -d '+1 day ago'\` -e \`date +'%Y%m%d19' -d '+1 day ago'\`  -n test"
}
############################################
#脚本入口,获取参数
############################################
if [ $# -lt 1 ];then
echo "You must specify parameters:"
echo " -b begin time of awr"
echo " -e end time of awr"
exit 99
fi
while (($#>=1))
do
if [ "$1" == "-b" ];then
shift
awrbegintime=$1
shift
continue
fi
if [ "$1" == "-e" ];then
shift
awrendtime=$1
shift
continue
fi
if [ "$1" == "-n" ];then
shift
awrname=$1
shift
continue
fi
if [ "$1" == "-h" ];then
my_fun
exit 0
fi
shift
done
############################################
#健壮性检查
############################################
#参数不可以为空
if [ -z ${awrbegintime} ];then
echo "You must specify parameters:-b for begin time of awr"
exit 98
fi
if [ -z ${awrendtime} ];then
echo "You must specify parameters:-e for end time of awr"
exit 98
fi
if [ -z ${awrname} ];then
echo "You must specify parameters:-n for report name of awr"
exit 98
fi
#判断参数为时间
date -d "${awrbegintime:0:8} ${awrbegintime:8:2}" > /dev/null 2>&1
if [ $? -ne 0 ];then
echo "The valus of -b is invalid date."
exit 97
fi
date -d "${awrendtime:0:8} ${awrendtime:8:2}" > /dev/null 2>&1
if [ $? -ne 0 ];then
echo "The valus of -e is invalid date."
exit 97
fi
############################################
#执行函数,获取snap id
############################################
getsnapID ${awrbegintime} ${awrendtime}
############################################
#定义awr报告的路径
############################################
AWR_LOG=/u02/logout/awr/AWR_${awrname}_${awrbegintime}_${awrendtime}.html
############################################
#获取awr报告
############################################
echo -e "$AWR_FORMAT\n$NUM_DAYS\n$BEGIN_SNAP_ID\n$END_SNAP_ID\n$AWR_LOG\n"|(sqlplus -S / as sysdba @?/rdbms/admin/awrrpt.sql) > /dev/null
############################################
#帮助:
# 参数区分大小写
# -b awr的开始时间,格式:yyyymmddhh34
#   -e awr的结束时间,格式:yyyymmddhh34
#   -n awr报告中的名字
#例子:
# ./GET_AWR.SH -b "2019051708" -e "2019051709" -n test
# ./GET_AWR.sh -b `date +'%Y%m%d18' -d '+1 day ago'` -e `date +'%Y%m%d19' -d '+1 day ago'`  -n test
############################################

“怎么获取AWR的脚本”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注网站,小编将为大家输出更多高质量的实用文章!

内容来源网络,如有侵权,联系删除,本文地址:https://www.230890.com/zhan/77265.html

(0)

相关推荐

  • Hibernate有哪些优势

    技术Hibernate有哪些优势这篇文章主要为大家展示了“Hibernate有哪些优势”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“Hibernate有哪些优势”这篇文章吧。

    攻略 2021年12月8日
  • 然后用AFL开始你的第一次Fuzzing

    技术然后用AFL开始你的第一次Fuzzing然后用AFL开始你的第一次Fuzzing,针对这个问题,这篇文章详细介绍了相对应的分析和解答,希望可以帮助更多想解决这个问题的小伙伴找到更简单易行的方法。一、前言模糊测试(Fu

    攻略 2021年11月26日
  • pupils是什么意思,pupils是什么意思

    技术pupils是什么意思,pupils是什么意思pupils释义:n. 小学生;弟子;瞳孔 是名词pupil的复数形式pupils是什么意思。 1. pupil指由老师亲自照顾和指导的对象,尤指中小学生。在美式英语里,

    生活 2021年10月24日
  • g++入门代码(g++工程师工资)

    技术基于Spark Streaming+Saprk SQL怎么开发OnLineLogAanlysis2这篇文章将为大家详细讲解有关基于Spark Streaming+Saprk SQL怎么开发OnLineLogAanly

    攻略 2021年12月17日
  • 学习Python需要用什么开发工具

    技术学习Python需要用什么开发工具本篇文章为大家展示了学习Python需要用什么开发工具,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。近有不少读者私信我,这不刚开始学习Pyt

    攻略 2021年10月25日
  • 骑马的英语,关于骑马的英语作文高中

    技术骑马的英语,关于骑马的英语作文高中Since ancient times, people riding with a saying called Centaur with success.This word expl

    生活 2021年10月21日