oracle执行计划打印
下班逗猫闲得无聊,写写自己对几种oracle执行计划打印的认识。只是如何打印,对于如何查看执行计划有时间再写,毕竟9 10 6的人不配拥有太多。当然执行计划的打印方式很多,这只是其中几种。废话少说开始吧
方式一: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=
plustrce_url=
sqlplus / as sysdba <<EOF
方式一: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 $ORACLE_HOME -name "plustrce.sql"
sqlplus / as sysdba <<EOF
相关推荐
娜娜 2020-07-18
talkingDB 2020-07-05
lklong 2020-11-22
oraclemch 2020-11-06
shilukun 2020-10-10
周嘉笙 2020-11-09
zhuzhufxz 2020-09-16
bfcady 2020-08-16
Hody 2020-08-16
FightFourEggs 2020-08-16
数据库设计 2020-08-16
yanghuatong 2020-08-16
dbasunny 2020-08-16
罗罗 2020-08-16
ihuaqiang 2020-08-16
choice0 2020-07-30
娜娜 2020-07-28
solarspot 2020-07-28
踩风火轮的乌龟 2020-07-26
娜娜 2020-07-20
xwb 2020-07-19
流云追风 2020-07-04
dataminer 2020-06-25
娜娜 2020-06-22