核心参数调整
# 示例:4GB内存设为1GB
sudo nano /etc/postgresql/14/main/postgresql.conf
shared_buffers = '1GB'
内存分配策略优化
autovacuum并调整autovacuum_work_mem,控制自动清理内存使用。PARTITION BY),减少单表内存占用。并发与缓存优化
max_connections控制并发连接数,避免内存耗尽,建议不超过服务器CPU核心数×2+有效磁盘数。pg_stat_statements监控慢查询,优化高内存消耗的SQL语句。工具与自动化
pgtune工具生成内存配置建议,适配不同硬件环境。VACUUM和ANALYZE,避免死元组堆积导致内存碎片。pg_stat_activity和pg_stat_user_tables监控内存使用情况,验证优化效果。参考来源: