PostgreSQL 9.6.5文書 | |||
---|---|---|---|
前のページ | 上に戻る | 付録 F. 追加で提供されるモジュール | 次のページ |
adminpackは、pgAdminやその他の管理・運用ツールがサーバログファイルの遠隔管理を行うなどの、追加的な機能を提供できるようにするための数多くのサポート関数を提供します。 この関数の使用はすべてスーパーユーザに限定されています。
表F-1に示す関数はサーバをホスティングしているマシン上のファイルに対して書き込みアクセスを提供します。 (表9-86の関数も参照してください。そちらは読み取り専用アクセスを提供します。) データベースクラスタディレクトリ内のファイルにのみアクセス可能ですが、相対パスと絶対パスのどちらも利用できます。
表 F-1. adminpack関数
名前 | 戻り値の型 | 説明 |
---|---|---|
pg_catalog.pg_file_write(filename text, data text, append boolean) | bigint | テキストファイルに書き込む、または追記する |
pg_catalog.pg_file_rename(oldname text, newname text [, archivename text]) | boolean | ファイル名を変更する |
pg_catalog.pg_file_unlink(filename text) | boolean | ファイルを削除する |
pg_catalog.pg_logdir_ls() | setof record | log_directoryディレクトリ内のログファイルの一覧を表示する |
pg_file_write
は指定されたdataをfilenameで指定されたファイルに書き込みます
appendが偽であれば、ファイルは既に存在していてはいけません。
appendが真であれば、ファイルが既に存在していても構いません。その場合、追記されます。
書き込んだバイト数を返します。
pg_file_rename
はファイルの名前を変更します。
archivenameが省略されたり、NULLである場合は、単純にoldnameをnewname(既に存在していてはいけません)に変更します。
archivenameが指定されていれば、まずnewnameをarchivename(既に存在していてはいけません)に変更し、それからoldnameをnewnameに変更します。
第2段階の名前の変更が失敗した場合には、エラーを報告する前にarchivenameをnewnameに戻そうとします。
成功した場合には真を、元のファイルが存在しなかったり、書き込みできなかった場合には偽を返します。その他の場合にはエラーを発生します。
pg_file_unlink
は指定されたファイルを削除します。
成功した場合には真を、指定されたファイルが存在しなかったり、unlink()
の呼出しが失敗した場合には偽を返します。その他の場合にはエラーを発生します。
pg_logdir_ls
はlog_directoryディレクトリ内にあるログファイルすべての開始時のタイムスタンプとパス名を返します。
この関数を使うには、log_filenameパラメータはデフォルト設定(postgresql-%Y-%m-%d_%H%M%S.log)でなければなりません。
表F-2に示す関数は廃止予定であり、新しいアプリケーションでは使うべきではありません。代わりに表9-77や表9-86に示す関数を使ってください。 この関数はpgAdminの古いバージョンとの互換性のためだけにadminpackで提供されています。