今回は、Silverの「運用管理 - 設定ファイル(postgresql.conf)」からの出題です。
listen_addresses = 'localhost'
listen_addresses = '192.168.1.11'
listen_addresses = '192.168.1.51'
※この例題は実際のOSS-DB技術者認定試験とは異なります。
例題公開日:2021年10月6日
PostgreSQLでTCP/IPネットワーク経由での接続を受け付けるためには、postgresql.confの設定などが必要です。このときに重要なパラメータがlisten_addressesとportです。
PostgreSQLサーバはlisten_addressesで指定したネットワークインタフェース上のportで指定したポート番号への接続を監視します。ネットワークインタフェースとしては自ホストのホスト名あるいはIPアドレスを指定しますが、* を指定すると利用可能なすべてのインタフェースを監視しますので、通常は listen_addresses = '*' と指定すれば良いです。
複数のネットワークインタフェースを持ち、そのうちの特定のインタフェースでの接続のみを許可したい場合は、そのインタフェースの名前またはIPアドレスを指定します。
listen_addressesの指定がない、あるいはlocalhostの場合には、自ホスト内のクライアントからの接続のみを受け付けます。他のホストのIPアドレスを指定すると、恐らくはソケット作成のエラーが発生してデータベースサーバが起動しないでしょう。
listen_addressesでは接続元クライアントについての制約をつけること、例えば192.168.1.51からは接続可能だが192.168.1.101からは接続不可、というような設定はできません。これはpg_hba.confを適切に設定することで実現します。
したがって正解はBとDです。
今回の解説について、理解できないポイントがあればどんどん質問をお寄せ下さい。
採用になった方にはLPI-Japanオリジナルの記念品を贈呈します。
※試験問題に関わるお問い合わせにつきましては、LPI-Japan事務局ではお応えできませんのでご了解ください。
© EDUCO All Rights Reserved.