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

数据库性能问题GC等待严重

原创 问题归档 2019-03-20
3409

问题描述

早上7点左右,系统突然出现CPU警报,后连接失败,直接连接操作系统可以登录但操作特别卡顿,后现象消失,后排查,发现告警日志其中有两个可疑告警一个是VKTM另外一个是01555,目前还不清楚具体是什么原因造成?

专家解答

根据今天早上6-8点的AWR看到前台主要的GC相关的等待事件:

latch: cache buffers chains: 12.48%
latch: gc element: 2.83%

gc buffer busy acquire: 29.9%
gc buffer busy release: 9.48%
gc current block 2-way: 2.86%
gc current block congested: 1.65%
gc cr grant congested: 1.6%
gc current grant busy: 1.25%
gc cr grant 2-way: 1.11%

RAC两节点数据交互每秒达到了3M,且在AWR的topSQL中存在update undo$想到SQL:

update /*+ rule */ undo$ set name=:2, file#=:3, block#=:4, status$=:5, user#=:6, undosqn=:7, xactsqn=:8, scnbas=:9, scnwrp=:10, inst#=:11, ts#=:12, spare1=:13 where us#=:1

初步判断为GC相关的BUG,建议根据白求恩的巡检调整如下参数(需重启):

对于数据库实例,在11版本中,隐含参数 _undo_autotune 负责 undo retention(即 undo 段的保持时间)的自动调整,若由 Oracle 自动负责 undo retention,则 Oracle 会根据事务量来占用 undo 表空间,可能会形成 undo 表空间的争用,建议将其关闭。 

参考命令:alter system set "_undo_autotune"=FALSE scope=spfile sid='*';

对于数据库实例,在11版本RAC中,DRM(Dynamic Resource Mastering)负责将 Cache 资源 Remaster 到频繁访问这部分数据的节点上,从而提高 RAC 的性能。但是 DRM 在实际使用中存在诸多 Bug,频繁的 DRM 会引发实例长时间 Hang 住甚至是宕机,建议关闭 DRM。
参考命令:alter system set "_gc_policy_time"=0 scope=spfile sid='*';


对于数据库实例,在11版本RAC中,建议关闭集群 Undo Affinity,降低集群交互,避免触发相关 BUG。
参考命令:alter system set "_gc_undo_affinity"=FALSE scope=spfile sid='*'

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

评论