タイプ: string
コンテキスト: user
再起動: false

この変数は、接続時に事前読み込みされる、1つまたは複数の共有ライブラリを指定します。ここにはカンマ区切りでライブラリ名のリストを格納し、各々の名前はsql-loadコマンドと同じように解釈されます。項目の間の空白は無視されます。名前の中に空白あるいはカンマを含める場合は、二重引用符で囲ってください。このパラメータは、接続の開始時にのみ効果があります。以降の変更は効果がありません。もし指定したライブラリが見つからない場合は、接続は失敗します。

このオプションはすべてのユーザが設定できます。この理由で、読み込み可能なライブラリはインストレーションの共有ライブラリディレクトリのサブディレクトリplugins内にあるものに制限されています。(確実に安全なライブラリのみをここにインストールすることはデータベース管理者の責任です。) local_preload_libraries内の項目で、たとえば$libdir/plugins/mylibのようにこのディレクトリを明示的に指定することも、単にライブラリ名を指定することも可能です。mylib$libdir/plugins/mylibと同じ効果です。

この機能の意図するところは、明示的なLOADコマンドを使わずに、特定のセッションにおいて非特権ユーザがデバッグ用あるいは性能計測用のライブラリをロードできるようにすることにあります。そのためにも、クライアント側でPGOPTIONS環境変数を使う、あるいはALTER ROLE SETを使うことが典型的になるでしょう。

しかし、モジュールが特にスーパーユーザ以外に使われることを意図しているのでない限り、通常この方法は正しい使い方ではありません。代わりにsession_preload_librariesを見てください。

推奨事項 [EN]

This is largely a convenience setting, automatically loading libraries listed without needing an explicit load command. Has no effect on performance.

件のコメント