バージョンごとのドキュメント一覧

付録F 追加で提供されるモジュールと拡張

目次

F.1. amcheck — テーブルとインデックスの一貫性を検査するツール
F.1.1. 関数
F.1.2. オプションheapallindexed検証
F.1.3. amcheckを効果的に使う
F.1.4. 破損の修復
F.2. auth_delay — 認証エラー時に一時停止
F.2.1. 設定パラメータ
F.2.2. 作者
F.3. auto_explain — 低速な問い合わせ実行計画のログ
F.3.1. 設定パラメータ
F.3.2. 例
F.3.3. 作者
F.4. basebackup_to_shell — pg_basebackupモジュール"shell"の例
F.4.1. 設定パラメータ
F.4.2. 作者
F.5. basic_archive — WALアーカイブモジュールの例
F.5.1. 設定パラメータ
F.5.2. 注釈
F.5.3. 作者
F.6. bloom — ブルームフィルターインデックスアクセスメソッド
F.6.1. パラメータ
F.6.2. 例
F.6.3. 演算子クラスインタフェース
F.6.4. 制限事項
F.6.5. 作者
F.7. btree_gin — GIN演算子クラスとB-tree動作
F.7.1. 使用例
F.7.2. 作者
F.8. btree_gist — GiST演算子クラスとB-tree動作
F.8.1. 使用例
F.8.2. 作者
F.9. citext — 大文字小文字の区別がない文字列型
F.9.1. 原理
F.9.2. 使用方法
F.9.3. 文字列比較の動作
F.9.4. 制限事項
F.9.5. 作者
F.10. cube — 多次元立方体データ型
F.10.1. 構文
F.10.2. 精度
F.10.3. 使用方法
F.10.4. デフォルト
F.10.5. 注釈
F.10.6. クレジット
F.11. dblink — 他のPostgreSQLデータベースへ接続する
dblink_connect — リモートデータベースへの永続的な接続を開きます
dblink_connect_u — リモートデータベースへの永続的な危険な接続を開きます
dblink_disconnect — リモートデータベースへの永続的な接続を閉ざします
dblink — リモートデータベースで問い合わせを実行します
dblink_exec — リモートデータベースでコマンドを実行します
dblink_open — リモートデータベースでカーソルを開きます
dblink_fetch — リモートデータベースで開いているカーソルから行を取り出します
dblink_close — リモートデータベースでカーソルを閉ざします
dblink_get_connections — 接続中の名前付きdblink接続すべての名前を返します
dblink_error_message — 名前付き接続上の最後のエラーメッセージを入手します
dblink_send_query — リモートデータベースに非同期問い合わせを送信します
dblink_is_busy — 接続において非同期問い合わせが実行中か検査します
dblink_get_notify — 接続上の非同期通知を取り出します
dblink_get_result — 非同期問い合わせの結果を入手します
dblink_cancel_query — 名前付き接続上の実行中の問い合わせをすべて取り消します
dblink_get_pkey — リレーションの主キーフィールドの位置とフィールド名を返します
dblink_build_sql_insert — ローカル側のタプルを使用し、主キーフィールドの値を別の提供される値に置き換えてINSERT文を構築します
dblink_build_sql_delete — 主キーフィールドの値として提供された値を使用したDELETE文を構築します
dblink_build_sql_update — 主キーフィールドの値として提供された値を使用したUPDATE文を構築します
F.12. dict_int — 整数のための全文検索用の辞書の例
F.12.1. 設定
F.12.2. 使用方法
F.13. dict_xsyn — 類義語の全文検索用の辞書の例
F.13.1. 設定
F.13.2. 使用方法
F.14. earthdistance — 大圏距離を計算する
F.14.1. cubeを基にした地表距離
F.14.2. pointを基にした地表距離
F.15. file_fdw — サーバのファイルシステムにあるデータファイルにアクセスする
F.16. fuzzystrmatch — 文字列の類似度と距離を決定する
F.16.1. Soundex
F.16.2. Daitch-Mokotoff Soundex
F.16.3. レーベンシュタイン(Levenshtein)
F.16.4. Metaphone
F.16.5. Double Metaphone
F.17. hstore — hstoreキー/値データ型
F.17.1. hstoreの外部表現
F.17.2. hstoreの演算子と関数
F.17.3. インデックス
F.17.4. 例
F.17.5. 統計情報
F.17.6. 互換性
F.17.7. 変換
F.17.8. 作者
F.18. intagg — 整数型の集約子と列挙子
F.18.1. 関数
F.18.2. 使用例
F.19. intarray — 整数の配列を操作する
F.19.1. intarrayの関数および演算子
F.19.2. インデックスサポート
F.19.3. 例
F.19.4. ベンチマーク
F.19.5. 作者
F.20. isn — 国際標準番号(ISBN、EAN、UPC等)のためのデータ型
F.20.1. データ型
F.20.2. キャスト
F.20.3. 関数と演算子
F.20.4. 例
F.20.5. 参考文献
F.20.6. 作者
F.21. lo — ラージオブジェクトを管理する
F.21.1. 原理
F.21.2. 使用方法
F.21.3. 制限事項
F.21.4. 作者
F.22. ltree — 階層ツリーを模擬したデータ型
F.22.1. 定義
F.22.2. 演算子と関数
F.22.3. インデックス
F.22.4. 例
F.22.5. 変換
F.22.6. 作者
F.23. pageinspect — データベースページの低レベルな調査
F.23.1. 一般的な関数
F.23.2. ヒープ関数
F.23.3. B-tree関数
F.23.4. BRIN関数
F.23.5. GIN関数
F.23.6. GiST関数
F.23.7. Hash関数
F.24. passwordcheck — パスワードの強度を検査する
F.25. pg_buffercache — PostgreSQLのバッファキャッシュの状態を確認する
F.25.1. pg_buffercacheビュー
F.25.2. pg_buffercache_summary()関数
F.25.3. The pg_buffercache_usage_counts() Function
F.25.4. The pg_buffercache_evict Function
F.25.5. サンプル出力
F.25.6. 作者
F.26. pgcrypto — 暗号関数
F.26.1. 汎用ハッシュ関数
F.26.2. パスワードハッシュ化関数
F.26.3. PGP暗号化関数
F.26.4. 暗号化そのものを行う関数
F.26.5. ランダムデータ関数
F.26.6. 注釈
F.26.7. 作者
F.27. pg_freespacemap — 空き領域マップを検査する
F.27.1. 関数
F.27.2. サンプル出力
F.27.3. 作者
F.28. pg_prewarm — リレーションデータをバッファキャッシュにプリロードする
F.28.1. 関数
F.28.2. 設定パラメータ
F.28.3. 作者
F.29. pgrowlocks — テーブルの行ロックの情報を示す
F.29.1. 概要
F.29.2. サンプル出力
F.29.3. 作者
F.30. pg_stat_statements — SQL文のプラン生成時と実行時の統計情報を記録する
F.30.1. pg_stat_statements ビュー
F.30.2. pg_stat_statements_infoビュー
F.30.3. 関数
F.30.4. 設定パラメータ
F.30.5. サンプル出力
F.30.6. 作者
F.31. pgstattuple — タプルレベルの統計情報を入手する
F.31.1. 関数
F.31.2. 作者
F.32. pg_surgery — リレーションデータに対して低レベルの手術を行う
F.32.1. 関数
F.32.2. 作者
F.33. pg_trgm — トライグラム一致を使ったテキストの類似度をサポートする
F.33.1. トライグラム(またはトリグラフ)の概念
F.33.2. 関数と演算子
F.33.3. GUCパラメータ
F.33.4. インデックスサポート
F.33.5. テキスト検索の統合
F.33.6. 参考
F.33.7. 作者
F.34. pg_visibility — 可視性マップ情報とユーティリティ
F.34.1. 関数
F.34.2. 作者
F.35. pg_walinspect — 低レベルのWAL検査
F.35.1. 一般的な関数
F.35.2. 作者
F.36. postgres_fdw — 外部のPostgreSQLサーバに格納されたデータにアクセスする
F.36.1. postgres_fdwの外部データラッパーオプション
F.36.2. 関数
F.36.3. 接続管理
F.36.4. トランザクション制御
F.36.5. リモート問い合わせの最適化
F.36.6. リモート問い合わせ実行環境
F.36.7. バージョン間互換性
F.36.8. Wait Events
F.36.9. 設定パラメータ
F.36.10. 例
F.36.11. 作者
F.37. seg — 線分または浮動小数点区間のためのデータ型
F.37.1. 原理
F.37.2. 構文
F.37.3. 精度
F.37.4. 使用方法
F.37.5. 注釈
F.37.6. クレジット
F.38. sepgsql — SELinuxベースでラベルベースの強制アクセス制御(MAC)セキュリティモジュール
F.38.1. 概要
F.38.2. インストール
F.38.3. リグレッションテスト
F.38.4. GUCパラメータ
F.38.5. 機能
F.38.6. sepgsql関数
F.38.7. 制限事項
F.38.8. 外部リソース
F.38.9. 作者
F.39. spi — サーバプログラミングインタフェース機能/例
F.39.1. refint — 参照整合性を実装する関数
F.39.2. autoinc — フィールド自動増分用の関数
F.39.3. insert_username — 誰がテーブルを変更したかを追跡する関数
F.39.4. moddatetime — 最終更新時刻を追跡する関数
F.40. sslinfo — クライアントのSSL情報を取得する
F.40.1. 提供される関数
F.40.2. 作者
F.41. tablefunc — テーブルを返す関数(crosstab等)
F.41.1. 提供される関数
F.41.2. 作者
F.42. tcn — テーブルの内容の変更を監視者に通知するトリガ関数
F.43. test_decoding — SQLに基づくWAL論理デコードのためのテストモジュール/モジュール例
F.44. tsm_system_rows — TABLESAMPLEに対するSYSTEM_ROWSサンプリングメソッド
F.44.1. 例
F.45. tsm_system_time — TABLESAMPLEに対するSYSTEM_TIMEサンプリングメソッド
F.45.1. 例
F.46. unaccent — 発音区分記号を取り除く全文検索用辞書
F.46.1. 設定
F.46.2. 使用方法
F.46.3. 関数
F.47. uuid-ossp — UUID生成器
F.47.1. uuid-ossp関数
F.47.2. uuid-osspの構築
F.47.3. 作者
F.48. xml2 — XPath問い合わせとXSLT機能
F.48.1. 廃止予定の可能性についてのお知らせ
F.48.2. 関数の説明
F.48.3. xpath_table
F.48.4. XSLT関数
F.48.5. 作者
<title>Additional Supplied Modules and Extensions</title>

This appendix and the next one contain information on the optional components found in the <literal>contrib</literal> directory of the <productname>PostgreSQL</productname> distribution. These include porting tools, analysis utilities, and plug-in features that are not part of the core PostgreSQL system. They are separate mainly because they address a limited audience or are too experimental to be part of the main source tree. This does not preclude their usefulness. この付録と次の付録にはPostgreSQL配布物のcontribディレクトリにあるオプションとなっているコンポーネントに関する情報があります。 ここには、PostgreSQLのコアシステムにはない移植用のツール、解析ユーティリティ、プラグイン機能が含まれます。 これらは、限定した利用者を対象にしていること、または、主ソースツリーに含めるには実験的すぎることが主な理由で分けられています。 これはその有用性を妨げるものではありません。

This appendix covers extensions and other server plug-in module libraries found in <literal>contrib</literal>. <xref linkend="contrib-prog"/> covers utility programs. この付録では、contribにある拡張やその他のサーバプラグインモジュールライブラリを説明します。 付録Gは、ユーティリティプログラムをカバーしています。

When building from the source distribution, these optional components are not built automatically, unless you build the "world" target (see <xref linkend="build"/>). You can build and install all of them by running: ソース配布から構築する場合、"world"を対象に構築しない限り、これらのオプションのコンポーネントは自動的には構築されません(ステップ 2参照)。 次のコマンドを実行することで、これらすべてを構築しインストールすることができます。

make
make install

in the <literal>contrib</literal> directory of a configured source tree; or to build and install just one selected module, do the same in that module's subdirectory. Many of the modules have regression tests, which can be executed by running: 設定されたソースツリーのcontribディレクトリにあります。 あるいは、選択した1つのモジュールのみを構築しインストールするには、そのモジュールのサブディレクトリで同じコマンドを行ってください。 多くのモジュールにはリグレッションテストがあり、以下を

make check

before installation or インストール前に実行、または以下を

make installcheck

once you have a <productname>PostgreSQL</productname> server running. PostgreSQLサーバが動いている状態で実行できます。

If you are using a pre-packaged version of <productname>PostgreSQL</productname>, these components are typically made available as a separate subpackage, such as <literal>postgresql-contrib</literal>. PostgreSQLのパッケージ化されたバージョンを使用している場合は通常、例えばpostgresql-contribのような別途副パッケージとしてこれらのコンポーネントが利用可能です。

Many components supply new user-defined functions, operators, or types, packaged as <firstterm>extensions</firstterm>. To make use of one of these extensions, after you have installed the code you need to register the new SQL objects in the database system. This is done by executing a <xref linkend="sql-createextension"/> command. In a fresh database, you can simply do 多くのコンポーネントは拡張としてパッケージ化され、新しいユーザ定義関数、演算子、型を提供します。 こうした拡張の1つを使用できるようにするためには、コードをインストールした後に、新しいSQLオブジェクトをデータベースサーバに登録する必要があります。 これはCREATE EXTENSIONコマンドを実行することで行われます。 新しいデータベースでは、以下のように簡単に行うことができます。

CREATE EXTENSION extension_name;

This command registers the new SQL objects in the current database only, so you need to run it in every database in which you want the extension's facilities to be available. Alternatively, run it in database <literal>template1</literal> so that the extension will be copied into subsequently-created databases by default. このコマンドは現在のデータベースの中にのみ新しいSQLオブジェクトを登録します。このため、その拡張の機能を利用可能にさせたいデータベース毎にこのコマンドを実行しなければなりません。 その拡張が今後作成されるデータベースにデフォルトでコピーされるようにtemplate1データベースに対して実行する方法もあります。

For all extensions, the <command>CREATE EXTENSION</command> command must be run by a database superuser, unless the extension is considered <quote>trusted</quote>. Trusted extensions can be run by any user who has <literal>CREATE</literal> privilege on the current database. Extensions that are trusted are identified as such in the sections that follow. Generally, trusted extensions are ones that cannot provide access to outside-the-database functionality. これらすべての拡張について、拡張がtrustedと見なされていなければ、CREATE EXTENSIONコマンドはデータベーススーパーユーザによって実行されなければなりません。 信頼されている拡張は、現在のデータベースに対してCREATE権限を持つユーザであれば誰でも実行できます。 信頼されている拡張は、以降の節でそのように明確にされています。 一般的に信頼されている拡張とは、データベース外の機能へのアクセスを提供できない拡張のことです。

The following extensions are trusted in a default installation: デフォルトのインストールでは以下の拡張が信頼されているものです。

btree_ginfuzzystrmatchltreetcn
btree_gisthstorepgcryptotsm_system_rows
citextintarraypg_trgmtsm_system_time
cubeisnsegunaccent
dict_intlotablefuncuuid-ossp

Many extensions allow you to install their objects in a schema of your choice. To do that, add <literal>SCHEMA <replaceable>schema_name</replaceable></literal> to the <command>CREATE EXTENSION</command> command. By default, the objects will be placed in your current creation target schema, which in turn defaults to <literal>public</literal>. 多くの拡張はユーザが選択したスキーマ内にそのオブジェクトをインストールすることができます。 これを行うためにはCREATE EXTENSIONコマンドにSCHEMA schema_nameを追加してください。 デフォルトでは、オブジェクトは現在の作成対象スキーマ内に格納され、そのスキーマのデフォルトはpublicです。

Note, however, that some of these components are not <quote>extensions</quote> in this sense, but are loaded into the server in some other way, for instance by way of <xref linkend="guc-shared-preload-libraries"/>. See the documentation of each component for details. しかしながら、いくつかのコンポーネントはこの意味での拡張ではなく、例えばshared_preload_librariesといった他の方法でサーバにロードされることに注意してください。 各コンポーネントの詳細はドキュメントを参照してください。

doc/src/sgml/amcheck.sgml doc/src/sgml/auth-delay.sgml doc/src/sgml/auto-explain.sgml doc/src/sgml/basebackup-to-shell.sgml doc/src/sgml/basic-archive.sgml doc/src/sgml/bloom.sgml doc/src/sgml/btree-gin.sgml doc/src/sgml/btree-gist.sgml doc/src/sgml/citext.sgml doc/src/sgml/cube.sgml doc/src/sgml/dblink.sgml doc/src/sgml/dict-int.sgml doc/src/sgml/dict-xsyn.sgml doc/src/sgml/earthdistance.sgml doc/src/sgml/file-fdw.sgml doc/src/sgml/fuzzystrmatch.sgml doc/src/sgml/hstore.sgml doc/src/sgml/intagg.sgml doc/src/sgml/intarray.sgml doc/src/sgml/isn.sgml doc/src/sgml/lo.sgml doc/src/sgml/ltree.sgml doc/src/sgml/pageinspect.sgml doc/src/sgml/passwordcheck.sgml doc/src/sgml/pgbuffercache.sgml doc/src/sgml/pgcrypto.sgml doc/src/sgml/pgfreespacemap.sgml doc/src/sgml/pgprewarm.sgml doc/src/sgml/pgrowlocks.sgml doc/src/sgml/pgstatstatements.sgml doc/src/sgml/pgstattuple.sgml doc/src/sgml/pgsurgery.sgml doc/src/sgml/pgtrgm.sgml doc/src/sgml/pgvisibility.sgml doc/src/sgml/pgwalinspect.sgml doc/src/sgml/postgres-fdw.sgml doc/src/sgml/seg.sgml doc/src/sgml/sepgsql.sgml doc/src/sgml/contrib-spi.sgml doc/src/sgml/sslinfo.sgml doc/src/sgml/tablefunc.sgml doc/src/sgml/tcn.sgml doc/src/sgml/test-decoding.sgml doc/src/sgml/tsm-system-rows.sgml doc/src/sgml/tsm-system-time.sgml doc/src/sgml/unaccent.sgml doc/src/sgml/uuid-ossp.sgml doc/src/sgml/xml2.sgml