暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 19C 确定要调整的语句的准则

原创 Asher.HU 2021-02-04
519


您必须确定哪些SQL语句使用最多的CPU或磁盘资源。

如果TIMED_STATISTICS启用了该参数,则可以在该CPU列中找到较高的CPU活动如果TIMED_STATISTICS未启用,则检查QUERYCURRENT列。

除了锁定问题和低效的PL / SQL循环外,查找问题语句不需要CPU时间或经过的时间。关键是查询(即要符合读取一致性)和当前(即要不符合读取一致性)的块访问次数。将在当前模式下获取将要更新的段标题和块,但是所有查询和子查询处理均以查询模式请求数据。这些措施与实例统计信息CONSISTENT GETS完全相同DB BLOCK GETS您可以在disk列中找到高磁盘活动

下面的清单显示TKPROF了一条SQL语句在输出文件中出现的输出:

SELECT * 
FROM emp, dept 
WHERE emp.deptno = dept.deptno;

call   count      cpu    elapsed     disk    query current    rows
---- -------  -------  --------- -------- -------- -------  ------
Parse     11     0.08      0.18        0       0       0         0
Execute   11     0.23      0.66        0       3       6         0
Fetch     35     6.70      6.83      100   12326       2       824
------------------------------------------------------------------
total     57     7.01      7.67      100   12329       8       826

Misses in library cache during parse: 0 

如果具有7.01 CPU秒并检索824行的记录是可以接受的,则无需进一步查看此跟踪输出。实际上,TKPROF调优练习报告的主要用途是从详细调优阶段中消除流程。

输出表明进行了10个不必要的解析调用(因为该单个语句存在11个解析调用)并且执行了数组提取操作。提取的行多于执行的提取。CPUelapsed时序之间的较大差距表示物理I / O。


「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论