我需要调整我的PostgreSQL 9版本的postgresql.conf文件

我整理了我认为与PostgreSQL 9系列的配置要点相关的内容。

1. 检查点周围的设置

checkpoint_completion_target 0.8
checkpoint_segments      6    ※ 但し9.4まで。9.5からこのパラメータは廃止。
checkpoint_timeout       30min

如果主要的目标是更新,那么无论如何,”checkpoint_completion_target”都可以尽可能地接近1(但服务器负荷会增加)。
如果以更新为主要目标,那么可以尽量将”checkpoint_completion_target”设为接近于1的值,但会增加服务器的负荷。

2. 网络连接设置

listen_addresses     '*'
port            {デフォルト以外のポート指定}

3. 日志环境设置

log_destination           stderr
log_directory            /var/log/pg_log/
log_filename            postgresql-%d.log
log_line_prefix            [%m][%p][%u][%d][%h][%e]
log_rotation_age            1d
log_truncate_on_rotation      on

如果要将日志文件切割到”/var/log/pg_log/”目录下,请正确配置mkdir和chown。

4. 使用SSD的设定
→ 在物理服务器上进行设定时,以下参数可能会提高性能。

随机页成本为4.0。

5.内存设置

effective_cache_size                メモリ総量の1/4
maintenance_work_mem                メモリ総量の1/256
shared_buffers                      メモリ総量の1/4
temp_buffers                        メモリ総量の1/128
wal_buffers                         メモリ総量の1/512
work_mem                            メモリ総量の1/2048

然而,如果在同一台服务器上配置了Apache等服务,就需要考虑内存分配的总量,并且要考虑到由于占用过多内存而产生SWAP的情况。

以上、供参考之用。

广告
将在 10 秒后关闭
bannerAds