タイプ: | 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を見てください。