当前位置: 首页 > news >正文

业务干挂数据库,Oracle内存分配不足

📢📢📢📣📣📣
作者:IT邦德
中国DBA联盟(ACDU)成员,10余年DBA工作经验
Oracle、PostgreSQL ACE
CSDN博客专家及B站知名UP主,全网粉丝10万+
擅长主流Oracle、MySQL、PG、高斯及Greenplum备份恢复,
安装迁移,性能优化、故障应急处理

文章目录

    • 1.故障现象
    • 2. 分析过程
      • 2.1 AAS负载
      • 2.2 等待事件
      • 2.3 transactions分析
      • 2.4 阻塞分析
    • 3.总结分析

最近一套核心的19C业务库挂了,严重的影响了生产,经过全方位的排查,分析出来的结果业务剧增导致的内存不足,特将本次故障分析分享给大家!

1.故障现象

应用反馈数据库已经夯住,通过监控平台看到很多高警如下,初步判定跟Log file sync有关系,但是别经验主义,详细的分析还要看具体报告!

Warning: log write elapsed time 783ms, size 5KB
*** 2025-01-20T11:56:02.114674+08:00
Warning: log write elapsed time 2215ms, size 4KB
*** 2025-01-20T12:00:30.111624+08:00
Warning: log write elapsed time 657ms, size 146KB
*** 2025-01-20T12:02:39.413947+08:00
Warning: log write elapsed time 534ms, size 109KB
*** 2025-01-20T12:02:40.422849+08:00
Warning: log write elapsed time 578ms, size 86KB
*** 2025-01-20T12:02:40.981447+08:00
Warning: log write elapsed time 558ms, size 41KB

2. 分析过程

2.1 AAS负载

一看AAS,吓一跳啊,AAS>> # of CPUS,这明显的出现了很严重的性能瓶颈。

2.2 等待事件

等待事件是衡量数据库优化情况的重要指标,明显出现了异常。

acknowledge over PGA limit的解释为:如果实例接近PGA_AGGREGATE_LIMIT限制,它将迫使需要更多PGA的进程等待一段时间,同时发现了PGA的内存在故障期间严重出现了内存抖动。

再次确认数据库参数的设置,PGA_AGGREGATE_LIMIT为20G,sga_target为55G,processes为5120的设置,按照官方的经验其实这是是合理的。

(1)OLTP系统:
SGA_TARGET = (total_mem * 0.8) * 0.8
PGA_AGGREGATE_TARGET=(total_mem * 0.8) * 0.2
(2)OLAP(DSS)系统:
SGA_TARGET= (total_mem * 0.8) * 0.5
PGA_AGGREGATE_TARGET =(total_mem * 0.8) * 0.5
(3)PGA_AGGREGATE_LIMIT=3MB*processes
RAC环境为:PGA_AGGREGATE_LIMIT=5MB*processes

那么这次怎么会导致over PGA limit呢?最大可能为业务剧增,那么继续排查。

那么如果想尽快恢复业务,可以临时设置PGA_AGGREGATE_LIMIT=0处理,但这不是长久之计。

2.3 transactions分析

ADDM的报告中也给出了这个结论,明显出现了剧增的业务。

一般来说transactions不超过200都是正常的,或者200左右都是正常的,超多1000就是非常繁忙了!

user calls/(user commits+user rollbacks) 本次平均值为4.84= 4.84/(0.33+0.67) ,平均每4.84 次 user calls 就会有一次 commit,业务提交特别的频繁。

2.4 阻塞分析

比较’log file sync’和’log file parallel write’的平均等待时间,此时IO存在严重的阻塞。


大量的SQL出现严重的library cache lock、latch: shared pool。

3.总结分析

上面的一切初始建议值,都是在上线前的最佳配置建议值,在上线执行一段时间后,系统执行特性真面目就慢慢的体现出来了,这时,就应该依据执行实际需求及时的调整SGA_TARGET与PGA_AGGREGATE_TARGET的值了,但是业务也要做好评估,必须期间提升硬件性能,同时一些低效率低的SQL也要做好优化!


文章转载自:

http://zPJoTe2F.sfLnx.cn
http://4SwAtSSG.sfLnx.cn
http://Nj8XX2hA.sfLnx.cn
http://f6VTzvuh.sfLnx.cn
http://UeTetZoC.sfLnx.cn
http://9LrqeeCc.sfLnx.cn
http://kLBOf5GG.sfLnx.cn
http://pY4R7xXz.sfLnx.cn
http://NMEE5JME.sfLnx.cn
http://JZoWsRGx.sfLnx.cn
http://Cc0S9NFg.sfLnx.cn
http://26Ijo4X6.sfLnx.cn
http://eZIcHpt6.sfLnx.cn
http://STvRqhTI.sfLnx.cn
http://B719EbVN.sfLnx.cn
http://2qaDwhi7.sfLnx.cn
http://9g1G1Zf0.sfLnx.cn
http://D00P5G1d.sfLnx.cn
http://LQgNovec.sfLnx.cn
http://kwJlKtC2.sfLnx.cn
http://w2TBRL6S.sfLnx.cn
http://PleR8KBb.sfLnx.cn
http://xNcjuoAZ.sfLnx.cn
http://WWs46e2l.sfLnx.cn
http://bVhyKblk.sfLnx.cn
http://xf4rzCxT.sfLnx.cn
http://naVTJC24.sfLnx.cn
http://EQ0Gvh9Y.sfLnx.cn
http://RQde3dWu.sfLnx.cn
http://KHykgqZF.sfLnx.cn
http://www.dtcms.com/a/14885.html

相关文章:

  • css:position
  • K8s之存储卷
  • Prompt通用技巧
  • redis sentinel模式 与 redis 分片集群 配置
  • (五)Spring Boot学习——spring security +jwt使用(前后端分离模式)
  • iOS实现生物识别
  • git: 如何查询某个文件或者某个目录的更新历史
  • 服务器之连接简介(Detailed Explanation of Server Connection)
  • 网络编程01 - 速通计网知识点
  • python学习第十四天之机器学习名词介绍
  • RNN复兴!性能反超Transformer,训练速度提升1300倍!
  • 数据结构 栈和队列
  • 本地部署DeepSeek + AnythingLLM 搭建高效安全的个人知识库
  • 突破数据壁垒,动态住宅代理IP在数据采集中的高效应用
  • 系统思考—团队学习
  • SpringBoot的单机模式是否需要消息队列?分布式应用中消息队列如何和服务的发现与注册、配置中心、SpringMVC相配合
  • 有哪些免费的SEO软件优化工具
  • AGI时代的认知重塑:人类文明的范式转移与思维革命
  • Python多进程Logging
  • 金融风控项目-业务基础
  • carbon 加入 GitCode:Golang 时间处理的 “瑞士军刀”
  • C语言基础学习之基本语法
  • C++智能指针的使用
  • 服务器绑定 127.0.0.1 和 0.0.0.0 的区别
  • 深入理解 CSS 层叠上下文
  • 只需三步!5分钟本地部署deep seek——MAC环境
  • linux ollama deepseek等大语言模型的model文件的存储目录
  • 【Mastering Vim 2_01】开篇词:在 AI 时代持续深耕底层技术,做长期主义的坚定捍卫者
  • 【每日关注】科技圈重要动态
  • ArrayList、LinkedList、HashMap、HashTable、HashSet、TreeSet