以下是Ubuntu PostgreSQL性能优化技巧:
配置参数优化
postgresql.conf
关键参数:
shared_buffers
:设为系统内存的25%-50%,用于缓存数据。work_mem
:控制排序/哈希操作内存,建议64MB-256MB,避免过大影响并发。effective_cache_size
:设为系统内存的50%-75%,辅助查询优化器决策。max_connections
:根据并发需求设置,避免过多连接消耗资源。autovacuum=on
,并调整autovacuum_vacuum_scale_factor
等参数。索引优化
INCLUDE
子句)避免回表查询。REINDEX
或VACUUM ANALYZE
,删除冗余索引。查询优化
EXPLAIN/EXPLAIN ANALYZE
分析执行计划,避免全表扫描。SELECT *
,合理使用JOIN
替代子查询,添加LIMIT
限制返回数据量。硬件与系统优化
vm.swappiness
,减少内存换页。监控与维护
pg_stat_statements
监控慢查询,针对性优化。连接与缓存管理
参考来源: