無料スクリプト配布のPHP.TO   PHPの実用的なtips PHPマニュアル MySQLマニュアル Apacheマニュアル PostgreSQLマニュアル マニュアル検索    

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

この付録と次の付録には PostgreSQL 配布物の contrib ディレクトリにあるモジュールに関する情報があります。 ここには、移植用のツール、解析ユーティリティ、限定した利用者を対象にしていること、または、主ソースツリーに含めるには実験的すぎることが主な理由でPostgreSQLのコアシステムにはないプラグイン機能が含まれます。 これはその有用性を妨げるものではありません。

この付録では、 contrib にあるエクステンションやその他のサーバプラグインモジュールを説明します。

ソース配布から構築する場合、"world"を対象に構築しない限り、これらのモジュールは自動的に構築されません( ステップ2 参照)。 以下をconfigureを実行した後のソースツリー内の contrib ディレクトリで実行することで、これらすべてを構築しインストールすることができます。


gmake


gmake install

選択した1つのモジュールのみを構築しインストールするには、そのモジュールのディレクトリで同じコマンドを行ってください。 多くのモジュールにはリグレッション試験があり、インストール前であれば以下のコマンドで、


gmake check

PostgreSQL サーバが動いている状態であれば以下のコマンドで実行できます。


gmake installcheck

PostgreSQL のパッケージ化されたバージョンを使用している場合は通常、例えば postgresql-contrib のような別途副パッケージとしてこれらのモジュールが利用可能です。

多くのモジュールは新しいユーザ定義関数、演算子、型を提供します。 こうしたモジュールの1つを使用できるようにするためには、コードをインストールした後に、新しいオブジェクトをデータベースサーバに登録する必要があります。 PostgreSQL 9.1以降では、これは CREATE EXTENSION コマンドを実行することで行われます。 新しいデータベースでは、以下のように簡単に行うことができます。 以下に例を示します。

CREATE EXTENSION 

module_name

;

このコマンドはデータベーススーパーユーザにより実行されなければなりません。 これは現在のデータベースの中にのみ新しいオブジェクトを登録します。 このため、そのモジュールの機能を利用可能にさせたいデータベース毎にこのコマンドを実行しなければなりません。 その拡張が今後作成されるデータベースにデフォルトでコピーされるように template1 データベースに対して実行する方法もあります。

多くのモジュールはユーザが選択したスキーマ内にそのオブジェクトをインストールすることができます。 これを行うためには CREATE EXTENSION コマンドに SCHEMA schema_name を追加してください。 デフォルトでは、現在の作成対象スキーマ、通常は public 内に格納されます。

9.1より前のバージョンの PostgreSQL からダンプしてリストアすることでデータベースができあがった場合、もし9.1より前のバージョンのモジュールを使用していたのであれば、代わりに以下を行わなければなりません。

CREATE EXTENSION 

module_name

 FROM unpackaged;

これは9.1より前のモジュール内のオブジェクトを適切な 拡張 オブジェクトに更新します。 今後のモジュールの更新は ALTER EXTENSION により管理されます。 拡張の更新に関する詳細については 項35.15 を参照してください。

しかしながら、いくつかのモジュールはこの意味での "エクステンション" ではなく、例えば shared_preload_libraries といった他の方法でサーバにロードされることに注意してください。 各モジュールの詳細はドキュメントを参照してください。


powered by SEO.CUG.NET