oracle 19c普通用户查询字典表all_views时等待row cache mutex事件
近日,一19c oracle rac测试环境,初始反馈是sys用户查询很快,cdb用户如c##any查询系统表如all_tables很慢,至少相差几十倍、有时候直接半天超时还没执行完,经查一开始发现在等待gc cr multi block mixed事件,该事件据官方解释,该事件时提升性能用的,如下:
Oracle GC CR Multi Block Mixed 事件是一种用于提高Oracle数据库性能和吞吐量的重要性能因素,它帮助加快多个进程在同一时间段内存入和取出数据库块(block)的过程,以及多个块之间相互组合的过程。
GC CR Multi Block Mixed 事件可以有效的利用完整的数据库缓存服务。当多个进程在同一时间段访问数据库时,GC CR Multi Block Mixed 事件可以帮助加速一个进程从数据库中取出一个块,并且另一个进程可以放入另一个块,同时这两个进程可以相互组合,可以提高多个进程读写数据库效率。
此外,GC CR Multi Block Mixed 事件可以使用复杂性来提高对多个块之间的这种组合操作。当运行Oracle数据库中的程序时,它将获取多个块,将其复合成一个整体,以满足特定的要求,可以在更少的时间和更少的缓存使用量完成这种操作,以节省时间和空间。
最后,GC CR Multi Block Mixed 事件可以改进用于访问数据库的性能,这对于许多在线应用程序和使用弹性数据库特性的应用程序特别重要。这种事件还可以改善实时平衡性和数据库备份操作,帮助管理员维护数据库。
后来查发现是select xxx from all_tables union all select xxx from all_views,卡在all_views上,此时一直在等待row cache mutex事件事件。如下:
需要打补丁解决,参见https://www.modb.pro/db/65295。
注:确实也有个别案例遇到gc cr multi block mixed是top等待事件的情况,但没有响应。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
2022-03-06 喜讯|恒生电子LightDB完成分布式数据产品稳定性测试
2022-03-06 推出不到12个月,LightDB国产数据库流行度排行榜已到第23名
2018-03-06 mybatis 3.x源码深度解析与最佳实践(最完整原创)
2017-03-06 rabbitmq heartbeat missing with heartbeat = N seconds原因总结