web-dev-qa-db-ja.com

Postgres用のAmazon RDSパラメータグループを設定するにはどうすればよいですか?

Postgres 9.5 RDSインスタンス用のパラメーターグループをAmazon Web Servicesで作成しようとしています。 shared_buffersmin_wal_sizeなどに使用されている単位に少し混乱しています。通常、これらはpostgresql.confまたは4GBのような単位で128kBで指定されます。 AWSに同じ値を入力すると、指定した値が無効であるというエラーが表示されますが、厳密には数値で問題ないようです。これらのパラメータが期待する単位を誰かが知っていますか?

5
Rob

Amazon RDSのドキュメントでは、「PostgreSQLパラメーターの操作」トピックの下に、パラメーターごとに 単位のテーブル が記載されています。単位は通常、Amazon RDSウェブコンソールのパラメーターグループ編集UIの各パラメーターの説明にも含まれています。

min_wal_size(Postgres 9.5パラメータグループファミリ)

  • デフォルト:16
  • 単位:MB
  • 許可される値:2-201326592
  • 説明:(16MB)WALを縮小する最小サイズを設定します。

shared_buffers(Postgres 9.5パラメータグループファミリ)

  • デフォルト:{DBInstanceClassMemory/32768}
  • 単位:8kB
  • 許可された値:16-1073741823
  • 説明:(8kB)サーバーが使用する共有メモリバッファの数を設定します。

特にshared_buffersに関して、ドキュメントには次のように書かれています。

一部のパラメータは、慣れていない可能性がある単位を使用していることに注意してください。たとえば、shared_buffersは、サーバーが使用する8 KBの共有メモリバッファーの数を設定します。

5
Anthony Neace

Anthonyの答えは、RDSがこれらのパラメーターをどのように使用するかをよく説明しています。コメントを追加したいだけです。

RDSの場合は 目次 に従う必要があります。

postgresql.confユニットと比較すると、ユニットは少し奇妙に見えるかもしれません。私は例を挙げたいだけです。

shared_buffersを1GBに設定するとします。

RDSのshared_buffersの単位は8KBです。つまり、n数の8kbを入れて1 GBにする必要があります。

つまり、 1 GB -> 1024 MB -> 1048576 KB

したがって、値を1048576 KB / 8 KBに設定する必要があります。これは131072です

したがって、値はRDSパラメータグループでは131072である必要があります。

お役に立てば幸いです。

3
orhankutlu