LOAD <refpurpose>load a shared library file</refpurpose> — 共有ライブラリファイルの読み込みを行う
LOAD 'filename
'
This command loads a shared library file into the <productname>PostgreSQL</productname>
server's address space. If the file has been loaded already,
the command does nothing. Shared library files that contain C functions
are automatically loaded whenever one of their functions is called.
Therefore, an explicit <command>LOAD</command> is usually only needed to
load a library that modifies the server's behavior through <quote>hooks</quote>
rather than providing a set of functions.
LOAD
コマンドは、共有ライブラリファイルをPostgreSQLサーバのアドレス空間にロードします。
そのファイルが既にロード済みなら、このコマンドは何も行いません。
C関数を含む共有ライブラリファイルは、その中の1つの関数が呼び出された時に常に、自動的にロードされます。
このため通常、明示的なLOAD
は、関数群を提供するのではなく「フック」を通してサーバの動作を変更するライブラリをロードするためだけに必要となります。
The library file name is typically given as just a bare file name, which is sought in the server's library search path (set by <xref linkend="guc-dynamic-library-path"/>). Alternatively it can be given as a full path name. In either case the platform's standard shared library file name extension may be omitted. See <xref linkend="xfunc-c-dynload"/> for more information on this topic. ライブラリファイルの名前は通常は単なるファイル名だけで指定され、それが(dynamic_library_pathで設定される)サーバのライブラリサーチパス内で検索されます。 あるいは、フルパス名で指定することもできます。 いずれの場合も、プラットフォームでの共有ライブラリファイル名の標準的な拡張子は省略できます。 この点についての詳細な情報は36.10.1を参照してください。
Non-superusers can only apply <command>LOAD</command> to library files
located in <filename>$libdir/plugins/</filename> — the specified
<replaceable class="parameter">filename</replaceable> must begin
with exactly that string. (It is the database administrator's
responsibility to ensure that only <quote>safe</quote> libraries
are installed there.)
非特権ユーザは$libdir/plugins/
にあるライブラリファイルのみをLOAD
させることができます。
つまり、指定したfilename
はこの文字列から始まらなければなりません。
(このディレクトリ以下に確実に「安全な」ライブラリのみをインストールすることはデータベース管理者の責任です。)
<command>LOAD</command> is a <productname>PostgreSQL</productname>
extension.
LOAD
はPostgreSQLの拡張です。