Oracle 11g升级19c 后部分查询功能很慢

*Oracle 11g升级19c 后部分查询功能很慢

今天生产突然有个查询非常慢,日志显示执行了50秒左右,但是从日志中拿出SQL在PLSQL执行,发现用时不到1秒,查看SQL,怀疑是下面几种原因导致

1、使用函数不当

UNIT.UNIT_CODE LIKE CONCAT('%', CONCAT(#{unitCodeOrName}, '%')

修改为 INSTR(INFO.UNIT_CODE, '${unitCodeOrName}') > 0
2、MyBatis解析花费时间较长

原因及参考方案可参考

https://blog.csdn.net/WO8451401/article/details/126948846?spm=1001.2101.3001.6650.3\&utm_medium=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-3-126948846-blog-106021178.235^v43^pc_blog_bottom_relevance_base3\&depth_1-utm_source=distribute.pc_relevant.none-task-blog-2~default~CTRLIST~Rate-3-126948846-blog-106021178.235^v43^pc_blog_bottom_relevance_base3\&utm_relevant_index=6![在这里插入图片描述](https://file.jishuzhan.net/article/1764298299801604098/8c2ea7639dba42f10d8bc02b950353da.webp)
3、执行SQL驱动不对

升级19c后,默认驱动为19c的,可指定SQL执行的驱动为11g

/*+ OPTIMIZER_FEATURES_ENABLE('11.2.0.4') */

最终经过实际验证,第三种方案顺利解决问题,数据库和程序脚本执行时间基本一致,非常快

相关推荐
_苏沐2 小时前
cte功能oracle与pg执行模式对比
数据库·oracle
F_D_Z10 小时前
【SQL】指定日期的产品价格
数据库·sql·mysql
Blossom.11811 小时前
从“能写”到“能干活”:大模型工具调用(Function-Calling)的工程化落地指南
数据库·人工智能·python·深度学习·机器学习·计算机视觉·oracle
麦聪聊数据11 小时前
如何使用 QuickAPI 快速连接 MySQL 数据库并发布 RESTful API
数据库·sql·mysql·restful·数据服务
不秃的开发媛12 小时前
Java连接池详解:从Oracle到TiDB的随缘之旅
java·oracle·tidb
嘻嘻哈哈曹先生12 小时前
Oracle数据库
数据库·oracle
0_0梅伊阁诗人14 小时前
Django ORM 模型
开发语言·数据库·笔记·python·oracle·django
数巨小码人15 小时前
Oracle SQL调优技巧实战指南
数据库·sql·oracle
noravinsc15 小时前
在银河麒麟v10上安装达梦8数据库
服务器·数据库·oracle
无名客017 小时前
SQL语句执行时间太慢,有什么优化措施?以及衍生的相关问题
java·数据库·sql·sql语句优化