こんにちは、O2 です。

今回は、postgresql の設定ファイル(postgresql.conf) に関しての、私が最近設定している

デフォルト値を公開しようと思います。

 

実際、インストール直後の設定では、「ロースペックのマシン環境でも動作する」設定の為

最近のサーバースペックにあった、デフォルト値を記述してみようと思います。

 

とは言っても、私が扱っている最近のサーバーのメモリは、8GB、16GB、32GB で、さらに

PostgreSQL 8.3以降を使用しているので、PostgreSQL 8.3以降での、メモリ3パターンでの

デフォルト値を紹介します。

 

注意.あくまでも、私が割り出したデフォルト値ですので、どのように使用するかによってチューニングは

必要になりますので、参考にご使用ください。

 

説明の前に

 PostgreSQL 8.2 以降かな?(間違っていたらだれか指摘してね)、設定値関して

 shared_buffers などのメモリ設定が、MB(メガバイド)や、GB(ギガバイト)という単位で

 設定できるようになっている為、設定しやすくなっています。

 

共通

 max_connections = 200

  log_destination = 'stderr'

  logging_collector = on

  log_directory = '/var/log/postgresql'

  log_filename = 'postgresql-%Y-%m-%d.log'

  log_min_messages = info

  log_error_verbosity = verbose

  log_line_prefix = '%t:%r[%p-%v]'

  log_autovacuum_min_duration = 0

  autovacuum = on

  log_lock_waits = on

   deadlock_timeout = 30s

 

メモリ:8GB の場合

  shared_buffers = 2GB

  work_mem = 32MB

  wal_buffers = 512KB

  checkpoint_segments = 16

  random_page_cost = 3.0

  effective_cache_size = 2GB

 

メモリ:16GB の場合

  shared_buffers = 3GB

  work_mem = 32MB

  wal_buffers = 512KB

  checkpoint_segments = 16

  random_page_cost = 3.0

  effective_cache_size = 3GB


メモリ:32GB の場合

  shared_buffers = 8GB

  work_mem = 64MB

  wal_buffers = 512KB

  checkpoint_segments = 32

  random_page_cost = 3.0

  effective_cache_size = 8GB

 

 

※今回の設定は、サーバーをDB専用にした場合を想定して書いてます。

ブックマークに追加する

.
web開発ならKBMJ
Rubyでのwebシステム開発は
実績豊富なKBMJにお任せ下さい
iPhone開発
iPhone開発は
KBMJにお任せ下さい
ブラウザゲーム エインヘリアル
ブラウザゲーム「エインへリアル」
αテスター募集中
オープンソースECパッケージ エレコマ
オープンソースECパッケージ
「エレコマ」

プロフィール

O2
O2
システムエンジニア視点での、ちょっとした知識を紹介しています。

最近チェックした記事

最新記事

アーカイブ

アクセスランキング

KBMJのWebソリューション
Ruby on railsの開発ならKBMJ
株式会社ケイビーエムジェイ