内核不中断前提下,Gaussdb(DWS)内存报错排查方法

💡 原文中文,约11200字,阅读约需27分钟。
📝

内容提要

本文介绍了如何通过分析数据库日志和内存视图来定位内存问题,并提供了解决方法。通过查询特定视图可以查找异常的内存使用情况,如pgxc_total_memory_detail和pv_session_memory_detail。清理空闲连接和查杀异常的SQL语句可以降低内存占用。对于dynamic_used_shrctx内存使用较多的情况,可以使用pg_shared_memory_detail视图进行排查。此外,还解释了dynamic_used_memory大于max_dynamic_memory的特殊处理。

🎯

关键要点

  • 通过分析数据库日志和内存视图定位内存问题。
  • 查询pgxc_total_memory_detail和pv_session_memory_detail视图查找异常内存使用情况。
  • 清理空闲连接和查杀异常SQL语句可以降低内存占用。
  • dynamic_used_shrctx内存使用较多时,使用pg_shared_memory_detail视图进行排查。
  • dynamic_used_memory大于max_dynamic_memory的情况需特殊处理,理论上不应大幅超过限制。
➡️

继续阅读