暂无图片
Oracle 10053事件有几个级别,一般常用哪一个?
我来答
分享
Handsome BOY
2021-09-02
Oracle 10053事件有几个级别,一般常用哪一个?

Oracle 10053事件有几个级别,一般常用哪一个?

我来答
添加附件
收藏
分享
问题补充
1条回答
默认
最新
Lucifer三思而后行
暂无图片

关于 Oracle 10053事件

借助Oracle的10053事件event,我们可以监控到CBO对SQL进行成本计算和路径选择的过程和方法。

10053 事件有两个级别:

Level 2:

2级是1级的一个子集,它包含以下内容:

Column statistics
Single Access Paths
Join Costs
Table Joins Considered
Join Methods Considered (NL/MS/HA)
复制

Level 1:

1级比2级更详细,它包含2级的所有内容,增加如下内容:

Parameters used by the optimizer
Index statistics
复制

启用10053事件:

ALTER SESSION SET EVENTS='10053 trace name context forever, level 1'; ALTER SESSION SET EVENTS='10053 trace name context forever, level 2';
复制

关闭10053事件:

ALTER SESSION SET EVENTS '10053 trace name context off';
复制

说明:

  • 1、sqlplus中打开autotrace看到的执行计划实际上是用explain plan 命令得到的,explain plan 命令不会进行bind peeking。应该通过v$sql_plan查看SQL的真实的执行计划。

  • 2、10053只对CBO有效,而且如果一个sql语句已经解析过,就不会产生新的trace信息。

  • 3、10053事件产生的trace文件不能用tkprof格式化。

  • 4.通过10053事件分析一个SQL执行计划的产生过程,需要贴出trace中的相关信息和必要的文字说明。

对于常用哪一个的问题,具体看场景需求吧, 10053事件没有10046事件用的多,比如我们分析SQL,主要还是看SQL的执行计划和SQL_TRACE信息。 但是如果想了解CBO的内部,还得通过10053事件,从10053事件的trace文件中,我们可以深入的了解CBO的内部,了解CBO是如何工作的,根据什么依据得出最终的执行计划。

如果帮助到你,动动小手点个采纳~

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
回答交流
Markdown


请输入正文
提交
相关推荐
oracle数据库,怎么在查询语句中直接获取当前时间年月日格式???
回答 1
已采纳
selectmax(id)fromtwhereidlikeconcat(tochar(sysdate,‘yyyyMMdd’),’%’);
Redo log file 大小分配问题
回答 1
可参考Archivedredologis(significant)smallerthantheredologfile.(文档ID1356604.1)的算法说明:1、logfile大小对unfill的l
Oracle执行事项提交了,还能回滚回来吗?
回答 3
不能rollback,但是可以flashback,另外,如果是简单的修改某张表内的内容,短时间内可以通过asoftimestamp来查询之前某个时间点前的这个表数据是什么样子
12C用impdp导入数据没有生成日志文件
回答 3
我创建了两个目录,一个是douyusi对应root用户下的地址/oracle/douyusi,一个是douyusi对应oracle用户下的地址/home/oracle/douyusi,在执行impdp
oracle 12c 数据泵导出整个CPD及所有的PDB,用system和sys用户都不成功
回答 7
12C需要连接到pdb再导出吧,连接到cdb的时候不能导出pdb。在tansnames.ora文件里给pdb创建条目,在expdp的userid里面配置即可
mysql中 || 的作用是什么? || 在oracle中的作用是什么?
回答 2
已采纳
oracle中是用||连接的。mysql的连接不是这个,而是concat。
Oracle一个插入语句其中一个文本字段,用TOAD可以插入,用sqlplus报错。排除unix utf8 SQL文件编码。插入html源码 ORA-01756
回答 1
即便是在utf8代码页下(chcp65001)下,SQLPLUS对UTF8的支持也很有限,建议在SQLDEVELOPER或TOAD下处理。
关注我每日一问Oracle,又可以学习又可以得墨值。
回答 2
已采纳
当插入一条日期是10天前的数据,然后插入一条日期是5天前的数据时:10天前的数据:将会存放在已存在的当日分区中,因为根据间隔分区的定义,分区会包含分区键值等于该分区上边界的记录。5天前的数据:同样也会
oracle12c rac安装过程中udev配置不生效
回答 3
删除已经创建的规则文件,按照这个步骤试试1.生成规则文件touch/etc/udev/rules.d/99oracleasmdevices.rules或者touch/usr/lib/udev/rule
Oracle怎样确定一年是否是闰年?
回答 5
已采纳
若要判断一年是否为闰年,可以看二月底是否为29号。withv1as (selectdate'20230312'asdfromdual)selecttrunc(d,'yyyy')asyearb