当前位置: 代码网 > it编程>数据库>Oracle > Oracle启用“_optimizer_skip_scan_enabled” 参数导致NC系统卡死问题解决方法

Oracle启用“_optimizer_skip_scan_enabled” 参数导致NC系统卡死问题解决方法

2024年08月14日 Oracle 我要评论
问题现象客户反映系统卡顿,很多操作耗时都比较长,通过nmc监控,线程耗时主要集中在数据库上。问题分析首先监控数据库服务器资源使用情况,cpu、内存使用正常,没有达到峰值。监控磁盘io情况,发现磁盘最长

问题现象

客户反映系统卡顿,很多操作耗时都比较长,通过nmc监控,线程耗时主要集中在数据库上。

问题分析 

首先监控数据库服务器资源使用情况,cpu、内存使用正常,没有达到峰值。

监控磁盘io情况,发现磁盘最长活动时间持续达到100%,说明系统磁盘io负载较高。

生成卡顿时段awr报告1:

可以看到2小时的awr报告db time达到7805mins,非常高。

用户io为主要等待时间,占比57%。

进一步查看数据库参数配置。

select * from v$parameter order by name 

96g内存的数据库服务器,oracle最大内存只分配了6.7g,调整数据库内存参数。

alter system set memory_max_target=66560m scope=spfile;
alter system set memory_target=66560m scope=spfile;
alter system set sga_max_size=66560m scope=spfile;

调整后业务依然很慢,nmc监控仍然在数据库端,再次生成一个卡顿时段的awr报告。

可以看到1小时的awr报告db time达到2739mins,依然很高。

等待事件不再是io,而是latch free。

查看数据库上事件为latch free的会话,发现闩锁id为559。

select * from v$session_wait where event like 'latch free' ;

查看559对应的latch name,为result cache: rc latch。

select * from v$latchname where latch#=559;

解决方案 

通过oracle官方支持网站mos查询问题,发现跟oracle12c新特性有关。

可通过如下隐含参数解决:

alter system set "_optimizer_skip_scan_enabled"=false scope=spfile;

修改后系统正常。 

到此这篇关于oracle启用“_optimizer_skip_scan_enabled” 参数导致nc系统卡死问题的文章就介绍到这了,更多相关oracle nc系统卡死内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com