问题描述
嗨,汤姆,
我曾经在一次采访中被问到,一个运行平稳,正常的plsql过程在特定的一天突然变得缓慢,并且没有像以前那样运行。
我试着回答说
1.) 计算该过程的SQL查询中使用的所有表的统计信息,以便如果任何索引不能正常工作,它们将开始使用DBMS_STATS工作。
2.) 检查并查找引起问题的查询,并将其执行计划与preprod环境进行比较,如果它们不同,则调整引起问题的查询。
有没有更好的方法可以在plsql过程中找到问题,该过程之前运行正常,但是在美好的一天突然停止运行。
请提供您的帮助。
我曾经在一次采访中被问到,一个运行平稳,正常的plsql过程在特定的一天突然变得缓慢,并且没有像以前那样运行。
我试着回答说
1.) 计算该过程的SQL查询中使用的所有表的统计信息,以便如果任何索引不能正常工作,它们将开始使用DBMS_STATS工作。
2.) 检查并查找引起问题的查询,并将其执行计划与preprod环境进行比较,如果它们不同,则调整引起问题的查询。
有没有更好的方法可以在plsql过程中找到问题,该过程之前运行正常,但是在美好的一天突然停止运行。
请提供您的帮助。
专家解答
我不知道你的场景的整个背景,但我不会 * 做1或2作为第一步,因为你可能会立即改变问题 (可能会让它变得更好,可能会让它变得更糟)
因此,第一步可能是:
a) 跟踪plsql的执行。请参阅 * 减速发生的地方 *
b) 关注 * 减慢 * 的潜在原因。(我假设它是一个SQL)
-获取当前计划
-我是否有关于SQL的历史信息,可以与以前的计划的eg AWR信息进行比较
-如果它们不同,那为什么?
-统计数据改变了吗
-在应该更改的时间 * 不 * 更改统计信息
-数据发生了巨大变化吗
-是否发生了结构性变化
-是否有更高级别的更改 (db patch,init.ora更改等)
但是请注意,所有这些并没有改变任何事情...我们 * 首先进行调查 *,并且只有在我们有坚实的证据的情况下才会发生变化
因此,第一步可能是:
a) 跟踪plsql的执行。请参阅 * 减速发生的地方 *
b) 关注 * 减慢 * 的潜在原因。(我假设它是一个SQL)
-获取当前计划
-我是否有关于SQL的历史信息,可以与以前的计划的eg AWR信息进行比较
-如果它们不同,那为什么?
-统计数据改变了吗
-在应该更改的时间 * 不 * 更改统计信息
-数据发生了巨大变化吗
-是否发生了结构性变化
-是否有更高级别的更改 (db patch,init.ora更改等)
但是请注意,所有这些并没有改变任何事情...我们 * 首先进行调查 *,并且只有在我们有坚实的证据的情况下才会发生变化
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
691次阅读
2025-04-18 14:18:38
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
635次阅读
2025-04-15 17:24:06
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
546次阅读
2025-04-20 10:07:02
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
494次阅读
2025-04-17 17:02:24
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
490次阅读
2025-04-22 00:20:37
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
480次阅读
2025-04-22 00:13:51
一页概览:Oracle GoldenGate
甲骨文云技术
469次阅读
2025-04-30 12:17:56
火焰图--分析复杂SQL执行计划的利器
听见风的声音
418次阅读
2025-04-17 09:30:30
3月“墨力原创作者计划”获奖名单公布
墨天轮编辑部
372次阅读
2025-04-15 14:48:05
OR+DBLINK的关联SQL优化思路
布衣
358次阅读
2025-05-05 19:28:36