ITPub博客

首页 > 数据库 > Oracle > 第12期 Oracle12.2 引发 SQL 不能共享进而造成 Cursor Mutex: x

第12期 Oracle12.2 引发 SQL 不能共享进而造成 Cursor Mutex: x

原创 Oracle 作者:pxbibm 时间:2024-08-08 14:19:40 0 删除 编辑

今天有一个朋友说公司安装使用的是 Oracle12.2  ,发现一直存在enq: TX - row lock contention事件,出现cursor: mutex X、cursor: mutex S、cursor: pin S wait on X 这类等待事件。

查询oracle资料,发现是由于Oracle12.2 未公开的 bug 导致的由于 Bind_equiv_failure 引发 SQL 不能共享进而造成 Cursor Mutex: x。

解决方案

打上 Patch 28794230

或者

使用如下的变通方案:

alter system set "_optimizer_use_feedback"=false scope=spfile;
alter system set "_optimizer_adaptive_cursor_sharing"=false scope=spfile;
alter system set "_optimizer_extended_cursor_sharing_rel"=none scope=spfile;
alter system set "_optimizer_use_feedback"=false;
alter system set "_optimizer_adaptive_cursor_sharing"=false;
alter system set "_optimizer_extended_cursor_sharing_rel"=none;


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/12798004/viewspace-3024501/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
【DBAplus社群】联合发起人。ACOUG核心成员,Oracle用户组年轻专家。熟悉Oracle的体系结构,擅长Oracle数据库架构规划、SQL优化、OWI方面性能的优化。曾服务于航天、航空、机车、大型制造行业数据库的维护以及系统开发工作,开发过基于Oracle数据库的大型ERP系统。
  • 博文量
    341
  • 访问量
    2469593