shared_buffers

Parameter Type: 整数

Default Value: 32MB

Range: 128kBからシステムに依存

Minimum Scope of Effect: クラスター

When Value Changes Take Effect: 再起動

Required Authorization to Activate: EPASサービスアカウント

データベースサーバが共有メモリバッファに使用するメモリ量を設定します。デフォルトは通常32メガバイト( 32MB )ですが、カーネル設定でサポートされていない場合( initdb で決定されたように)少なくなる場合があります。この設定は少なくとも128キロバイトでなければなりません。( BLCKSZ のデフォルト以外の値は最小値を変更します。)ただし、パフォーマンスを向上させるには通常、最小値よりも大幅に高い設定が必要です。

1GB以上のRAMを備えた専用のデータベースサーバーがある場合、 shared_buffers の妥当な開始値はシステムのメモリの25%です。 shared_buffers の大きな設定でも効果的なワークロードがありますが、AdvancedServerはオペレーティングシステムのキャッシュにも依存しているため、 shared_buffers へのRAMの40%以上の割り当てが小さいものよりもうまく機能する可能性は低いです量。

RAMが1GB未満のシステムでは、オペレーティングシステム用に十分なスペースを確保するために、RAMの割合を減らすのが適切です(これらの状況では、メモリの15%がより一般的です)。また、Windowsでは、 shared_buffers の値を大きくしても効果的ではありません。設定を比較的低く保ち、代わりにオペレーティングシステムのキャッシュをより多く使用すると、より良い結果が得られる場合があります。Windowsシステムでの shared_buffers の有効範囲は、一般に64MBから512MBです。

このパラメーターを大きくすると、AdvancedServerは、オペレーティングシステムのデフォルト構成で許可されているよりも多くのSystemV共有メモリを要求する場合があります。必要に応じて、これらのパラメーターを調整する方法については、PostgreSQLCoreDocumentation のセクション Shared Memory and Semaphores を参照してください。