下班逗猫闲得无聊,写写自己对几种oracle执行计划打印的认识。只是如何打印,对于如何查看执行计划有时间再写,毕竟9 10 6的人不配拥有太多。当然执行计划的打印方式很多,这只是其中几种。废话少说开始吧 方式三 视图 Would you like an HTML report, or a plain text report? 1564708553 1 ORCL orcl wcg Entering the number of days (n) will result in the most recent Listing the last day’s Completed Snapshots Instance DB Name Snap Id Snap Started Level orcl ORCL 9 19 Jun 2020 21:51 1 Specify the Begin and End Snapshot Ids Enter value for begin_snap: Enter value for report_name:
oracle执行计划打印
方式一:explain plan for
使用explain plan for,这种查询方式适合查看单条执行SQL的执行计划。explain plan for的查看方式也有两种:
1、 plsql的F5快捷键:登录plsql按F5—>plsql会打开开一个窗口—>编写sql命名并执行—>会有刚执行sql的执行计划打印出
2、 命令窗口或者登录数据库后台执行—>explain plan for sql语句;再执行select from table(dbms_xplan.display);–>会有执行计划打印出
注意:这种方式的执行计划只是预估值,并非真正的执行计划
方式二set autotrace on
这种方式不能再plsql下进行(目前我发现在不能在plsql下进行),只能在sqlplus下进行。(如果你问我sqlplus是啥,关机睡觉吧)
SQL> set autotrace on
SQL> select from A; #这句是你执行的sql,只能说这么细,再说细点感觉就是你对的侮辱
上一句执行后就会展现你的执行计划信息。
当然是用set autotrace on有时会报Cannot SET AUTOTRACE的错。小弟这里提供一个脚本,脚本的原理自己看内容(估计也没几个人喜欢看,哈哈)。当前脚本在oracle用户下执行。(不知道是小弟眼拙还是真的不能上传文件,脚本上传不了,大致内容如下:
#!/bin/sh
utlxplan_url=find $ORACLE_HOME -name “utlxplan.sql”
plustrce_url=find
ORACLEHOME−name“plustrce.sql“sqlplus/assysdba<<EOFbr/>@{plustrce_url}
@${utlxplan_url}
grant plustrace to scott;
exit;
EOF
)
通过查询v
sql和VSQL_PLAN两个视图来查询
第一步:查询v
sql表根据sqltext(执行的SQL)获取sqlid第二步:根据上一步得到的sqlid查询VSQL_PLAN表的中对应的执行计划
个人常用方法:简单暴力哈哈
方式四 awrsqrpt.sql
认识的多个大佬常用的方法:
第一步:
使用dba用户登录 sqlplus / as sysdba
第二步:
执行
SQL> @?/rdbms/admin/awrsqrpt.sql
会出现以下页面:
pecify the Report Type
Enter ‘html’ for an HTML report, or ‘text’ for plain text
Defaults to ‘html’
Enter value for report_type:
这是让你选择输出的文件类型,选html吧,别问为什么,就是喜欢。
第三步:
回车后会出现如下页面:
Instances in this Workload Repository schema
DB Id Inst Num DB Name Instance Host
Enter value for dbid:
是让你选择要生成AWR报告的实例DBid:例如我的就选1564708553 然后回车
第四步:
回车会会出现如下页面
Using 1564708553 for database Id
Enter value for inst_num:
是让你选择要生成AWR报告的实例inst_num,例如我则选:1然后回车
第五步:
回车后会出现如下页面
Specify the number of days of snapshots to choose from
(n) days of snapshots being listed. Pressing without
specifying a number lists all completed snapshots.
Enter value for num_days:
让你输入打印日志的天数(今天是1)
输入后回车
第六步:
回车后会出现如下页面 Snap
10 19 Jun 2020 23:00 1
11 19 Jun 2020 23:31 1
让你选择填写要生成报告的begin_snap(也就是开始点)然后回车
第七步:
回车后出现如下页面
Enter value for end_snap:
让你选择填写要生成报告的end_snap(也就是结束点)然后回车
第八步:
回车后出现如下页面:
Specify the Report Name
The default report file name is awrrpt_1_9_10.html. To use this name,
press to continue, otherwise enter an alternative.
然你输入日志的名称:例如wcg20200619.html 然后回车就会生成相应的执行计划
日志的生成路径一般在你的当前路径。也就是你在/opt/oracle下执行sqlplus / as sysdba 开始的打印之路。Name日志就会生成在/opt/oracle下
本网页所有视频内容由 imoviebox边看边下-网页视频下载, iurlBox网页地址收藏管理器 下载并得到。
ImovieBox网页视频下载器 下载地址: ImovieBox网页视频下载器-最新版本下载
本文章由: imapbox邮箱云存储,邮箱网盘,ImageBox 图片批量下载器,网页图片批量下载专家,网页图片批量下载器,获取到文章图片,imoviebox网页视频批量下载器,下载视频内容,为您提供.
阅读和此文章类似的: 全球云计算