Azure Database for PostgreSQL - フレキシブル サーバーにおいて PostgreSQL 拡張機能を管理する
適用対象: Azure Database for PostgreSQL - フレキシブル サーバー
Azure Database for PostgreSQL フレキシブル サーバーでは、拡張機能を使用してデータベースの機能を拡張できます。 拡張機能により、関連する複数の SQL オブジェクトを単一のパッケージにバンドルして、単一のコマンドで読み込みやデータベースからの削除を実行できます。 データベースに読み込まれると、拡張機能は組み込み機能と同じように機能します。
拡張機能を許可する
Azure Database for PostgreSQL フレキシブル サーバーに拡張機能をインストールする前に、それらの拡張機能を許可して使用対象の一覧に載せる必要があります。
Azure portal を使用して以下を実行します。
ライブラリを読み込む
shared_preload_libraries
は、Azure Database for PostgreSQL フレキシブル サーバーの起動時に読み込まれるライブラリを決定するサーバー構成パラメーターです。 共有メモリを使用するライブラリは、このパラメーターを使用して読み込む必要があります。 拡張機能を共有プリロード ライブラリに追加する必要がある場合は、次の手順に従います。
Azure portal を使用して以下を実行します。
拡張機能の作成
拡張機能を許可リストに載せると、また、その拡張機能に必要な場合は shared_load_libraries
にも追加すると、それを使用する各データベース内に作成またはインストールできます。
拡張機能を作成するには、ユーザーは
azure_pg_admin
ロールのメンバーである必要があります。特定の拡張機能を作成またはインストールするには、CREATE EXTENSION コマンドを実行します。 このコマンドで、パッケージ化されたオブジェクトがデータベースに読み込まれます。
Note
Azure Database for PostgreSQL フレキシブル サーバーで提供されるサード パーティ拡張機能は、オープンソース ライセンスのコードです。 プレミアムまたは独自のライセンス モデルを使用したサード パーティ拡張機能や拡張機能バージョンは Microsoft から提供されていません。
Azure Database for PostgreSQL フレキシブル サーバー インスタンスでは、主要な PostgreSQL 拡張機能のサブセットがサポートされています。これは、サポートされている拡張機能 (名前別) またはサポートされている拡張機能 (PostgreSQL バージョン別) に記載されているとおりです。 この情報は、SHOW azure.extensions;
を実行して確認することもできます。 それらの一覧の中に記載されていない拡張機能は、Azure Database for PostgreSQL フレキシブル サーバーに対してサポートされていません。 Azure Database for PostgreSQL フレキシブル サーバーにおいては、独自の拡張機能を作成したり読み込んだりすることはできません。
拡張機能の削除
拡張機能を削除するには、まずそれを許可リストに載せてください。
拡張機能を削除するには、ユーザーは
azure_pg_admin
ロールのメンバーである必要があります。特定の拡張機能を削除またはアンインストールするには、DROP EXTENSION コマンドを実行します。 このコマンドは、その拡張機能内にパッケージ化されたオブジェクトをデータベースから削除します。
拡張機能の更新
インストール済みの拡張機能を、Azure でサポートされている利用可能な最新バージョンに更新するには、次の SQL コマンドを使用します。
ALTER EXTENSION <extension_name> UPDATE;
このコマンドを使用すると、ユーザーが Azure で承認された最新バージョンに手動でアップグレードできるため、データベース拡張機能の管理が簡素化され、互換性とセキュリティの両方が強化されます。
制限事項
拡張機能の更新は簡単ですが、特定の制限があります。
特定のバージョンの選択: このコマンドは、拡張機能の中間バージョンへの更新をサポートしていません。
- 常に利用可能な最新バージョンに更新されます。
ダウングレード: 拡張機能は以前のバージョンにダウングレードできません。 ダウングレードが必要な場合はサポートの支援が必要になる可能性があり、以前のバージョンの可用性によって異なります。
インストール済み拡張機能の表示
データベースに現在インストールされている拡張機能を一覧表示するには、次の SQL コマンドを使用します。
SELECT * FROM pg_extension;
考えられるエラー
拡張機能 "%s" は Azure Database for PostgreSQL の "azure_pg_admin" ユーザーに対する使用許可リストに載っていません
このエラーは、許可リストに載っていない拡張機能、またはコマンドを実行している Azure Database for フレキシブル サーバーのインスタンス上でまだサポートされていない拡張機能を参照している CREATE EXTENSION
または DROP EXTENSION
コマンドを実行する場合に発生します。
"azure_pg_admin" のメンバーのみが CREATE EXTENSION を使用できます
このエラーは、CREATE EXTENSION
コマンドを実行するユーザーが azure_pg_admin
ロールのメンバーではない場合に発生します。
"azure_pg_admin" のメンバーのみが DROP EXTENSION を使用できます
このエラーは、DROP EXTENSION
コマンドを実行するユーザーが azure_pg_admin
ロールのメンバーではない場合に発生します。