DBAtlas · 数据库运维图谱

53200: out_of_memory

PostgreSQL

含义

服务器无法分配操作所需的内存。某个后端进程或整个服务器处于内存压力之下。

原因

work_mem/maintenance_work_mem 设置过高并在高并发下成倍放大、单个查询中哈希/排序操作过多、连接数过多、内存泄漏,或操作系统 OOM killer 造成的压力。

解决方法

检查服务器日志中的 memory context 以及 OOM killer 的痕迹。综合考虑查询数和并发数合理设置 work_mem(每个排序/哈希都会单独分配)。用连接池限制连接数。检查操作系统的内存/overcommit 设置。优化重型查询以降低其内存需求。

在 DBAtlas 中打开 →

同一数据库的其他条目