Aurora PostgreSQL DB クラスターに Trusted Language Extensions を設定する
以下のステップでは、Aurora PostgreSQL DB クラスター がカスタム DB クラスター パラメータグループに関連付けられていることを前提としています。これらの手順には、AWS Management Console または AWS CLI を使用できます。
Aurora PostgreSQL DB クラスター で信頼できる Trusted Language Extensions をセットアップする場合、そのデータベースに対するアクセス許可を持つデータベースユーザーが使用できるように、特定のデータベースにインストールします。
Trusted Language Extensions をセットアップするには
rds_superuser グループ (ロール) のメンバーであるアカウントを使用して、次のステップを実行します。
AWS Management Console にサインインし、Amazon RDS コンソール https://console.aws.amazon.com/rds/
を開きます。 -
ナビゲーションペインで、Aurora PostgreSQL DB クラスターのライターインスタンス を選択します。
-
Aurora PostgreSQL DB クラスターライターインスタンスの [Configuration] (設定) タブを開きます。インスタンスの詳細の中から、パラメータグループのリンクを見つけてください。
-
リンクを選択して、Aurora PostgreSQL DB クラスターに関連するカスタムパラメータを開きます。
-
パラメータ検索フィールドに、
shared_preを入力してshared_preload_librariesパラメータを検索します。 -
プロパティ値にアクセスするには、[Edit parameters] (パラメータの編集) を選択します。
-
[Values] (値) フィールドのリストに
pg_tleを追加します。値のリスト内の項目を区切るにはカンマを使用します。
Aurora PostgreSQL DB クラスターのライターインスタンス を再起動して、
shared_preload_librariesパラメータの変更を有効にします。インスタンスが使用可能になったら、
pg_tleが初期化されていることを確認します。psqlを使用して Aurora PostgreSQL DB クラスターのライターインスタンス、次のコマンドを実行します。SHOW shared_preload_libraries;shared_preload_libraries -------------------------- rdsutils,pg_tle (1 row)pg_tle拡張子を初期化すると、拡張機能を作成できるようになりました。CREATE EXTENSION pg_tle;以下の
psqlメタコマンドを使用して、拡張機能がインストールされていることを確認できます。labdb=>\dxList of installed extensions Name | Version | Schema | Description ---------+---------+------------+-------------------------------------------- pg_tle | 1.0.1 | pgtle | Trusted-Language Extensions for PostgreSQL plpgsql | 1.0 | pg_catalog | PL/pgSQL procedural languageAurora PostgreSQL DB クラスター のセットアップ時に作成したプライマリユーザー名に
pgtle_adminロールを付与します。デフォルトを受け入れた場合は、postgresです。labdb=>GRANT pgtle_admin TO postgres;GRANT ROLE次の例に示すように、
psqlメタコマンドを使用して、付与されたことを確認できます。出力にはpgtle_adminとpostgresロールのみが表示されます。詳細については、「PostgreSQL のロールとアクセス権限について」を参照してください。labdb=>\duList of roles Role name | Attributes | Member of -----------------+---------------------------------+----------------------------------- pgtle_admin | Cannot login | {} postgres | Create role, Create DB +| {rds_superuser,pgtle_admin} | Password valid until infinity |...\qメタコマンドを使用してpsqlセッションを終了します。\q
TLE 拡張機能の作成を開始するには、「例: SQL を使用した信頼できる言語拡張関数の作成」を参照してください。
AWS CLI をデフォルト AWS リージョン に設定することで、CLI コマンドを使用するときに --region 引数を指定しなくても済みます。詳細については、AWS Command Line Interface ユーザーガイドの「設定の基本」を参照してください。
Trusted Language Extensions をセットアップするには
shared_preload_librariesパラメータにpg_tleを追加するには、modify-db-parameter-group AWS CLI コマンドを使用します。aws rds modify-db-parameter-group \ --db-parameter-group-namecustom-param-group-name\ --parameters "ParameterName=shared_preload_libraries,ParameterValue=pg_tle,ApplyMethod=pending-reboot" \ --regionaws-region-
reboot-db-instance AWS CLI コマンドを使用して、Aurora PostgreSQL DB クラスター のライター インスタンスを再起動し、
pg_tleライブラリを初期化します。aws rds reboot-db-instance \ --db-instance-identifierwriter-instance\ --regionaws-region インスタンスが使用可能になると、
pg_tleが初期化されていることを確認できます。psqlを使用して Aurora PostgreSQL DB クラスターのライターインスタンス、次のコマンドを実行します。SHOW shared_preload_libraries;shared_preload_libraries -------------------------- rdsutils,pg_tle (1 row)pg_tleを初期化すると、拡張機能を作成できるようになりました。CREATE EXTENSION pg_tle;Aurora PostgreSQL DB クラスター のセットアップ時に作成したプライマリユーザー名に
pgtle_adminロールを付与します。デフォルトを受け入れた場合は、postgresです。GRANT pgtle_admin TO postgres;GRANT ROLE以下のように
psqlセッションを終了します。labdb=>\q
TLE 拡張機能の作成を開始するには、「例: SQL を使用した信頼できる言語拡張関数の作成」を参照してください。