Aurora PostgreSQL の PostgreSQL DB エンジンのアップグレード - Amazon Aurora

Aurora PostgreSQL の PostgreSQL DB エンジンのアップグレード

新しいバージョンのデータベースエンジンが Aurora PostgreSQL でサポートされている場合は、DB クラスターをその新しいバージョンにアップグレードできます。PostgreSQL DB クラスターのアップグレードには、メジャーバージョンのアップグレードとマイナーバージョンのアップグレードの 2 種類があります。

メジャーバージョンのアップグレードには、既存のアプリケーションとの下位互換性のないデータベースの変更が含まれる場合があります。そのため、DB インスタンスのメジャーバージョンアップグレードは手動で実行する必要があります。メジャーバージョンのアップグレードを行うには、DB クラスターを変更します。ただし、メジャーバージョンのアップグレードを行う前に、「メジャーバージョンのアップグレードを実施する方法」で説明されているステップを実行することをお勧めします。

それに対して、マイナーバージョンのアップグレードに含まれるのは、既存のアプリケーションとの下位互換性がある変更のみです。マイナーバージョンのアップグレードを手動で行うには、DB クラスターを変更します。または、DB クラスターの作成時または変更時に、[マイナーバージョン自動アップグレード] オプションを有効にすることができます。これにより、Aurora PostgreSQL によって新しいバージョンがテストおよび承認されると、DB クラスターが自動的にアップグレードされます。詳細については、「PostgreSQL のマイナーバージョンの自動アップグレード」を参照してください。マイナーバージョンアップグレードの手動での実行に関する詳細は、「Aurora PostgreSQL エンジンの手動アップグレード」を参照してください。

論理的なレプリケーションのパブリッシャーまたはサブスクライバーとして設定されている Aurora DB クラスターでは、メジャーバージョンアップグレードを実行できません。アップグレードする前に、レプリケーションを停止し、論理スロットを削除する必要があります。詳細については、「論理的なレプリケーションの使用停止」を参照してください。

有効なアップグレードターゲットを決定する方法については、「アップグレード先のエンジンバージョンの確認」を参照してください。

Aurora PostgreSQL のアップグレードの概要

メジャーバージョンのアップグレードには、以前のバージョンのデータベースと下位互換性のないデータベースの変更が含まれる場合があります。その場合、既存のアプリケーションが適切に動作しなくなることがあります。そのため、Amazon Aurora では、メジャーバージョンアップグレードは自動的に適用されません。メジャーバージョンのアップグレードを行うには、DB クラスターを手動で変更します。

DB インスタンスを安全にアップグレードするために、Aurora PostgreSQL では、PostgreSQL ドキュメントで説明されている pg_upgrade ユーティリティを使用します。ライターのアップグレードが完了すると、各リーダーインスタンスは新しいメジャーバージョンに自動的にアップグレードされている間、短時間停止します。

Aurora PostgreSQL は、メジャーバージョンアップグレードをスタートする前に DB クラスターのスナップショットを取得します。マイナーバージョンアップグレードの前に DB クラスターのスナップショットは取得されません。

メジャーバージョンアップグレードの完了後に以前のバージョンに戻す場合は、このスナップショットから DB クラスターを復元できます。メジャーバージョンまたはマイナーバージョンのアップグレードがスタートされる前の特定の時点に DB クラスターを復元することもできます。詳細については、「DB クラスターのスナップショットからの復元」または「DB クラスターを指定の時点の状態に復元する」を参照してください。

メジャーバージョンのアップグレードプロセス中には、クローンボリュームが割り当てられます。スキーマの非互換性などの理由でアップグレードに失敗した場合、Aurora PostgreSQL はこのクローンを使用してアップグレードをロールバックします。ただし、ソースのボリュームのクローンが 15 個より多く割り当てられると、後続のクローンはフルコピーになり、時間がかかります。これにより、アップグレードプロセスにも時間がかかる場合があります。Aurora PostgreSQL でアップグレードがロールバックされる場合は、次の点に注意してください。

  • アップグレード中に割り当てられたクローンボリューム、およびその元となったボリュームの両方について、請求情報とメトリクスが表示される場合があります。クラスターのバックアップ保持期間がアップグレードの時間を超えた時点で、Aurora PostgreSQL は余分なボリュームをクリーンアップします。

  • そのクラスターの次のクロスリージョンスナップショットコピーは、増分コピーではなく、フルコピーになります。

アップグレード先のエンジンバージョンの確認

データベースをアップグレードできるエンジンのメジャーバージョンを確認するには、CLI コマンドの describe-db-engine-versions を使用します。メジャーバージョンのアップグレードは実行できません。初期に、メジャーバージョンアップグレードパスがあるマイナーバージョンにアップグレードします。

例えば、次のコマンドでは、Aurora PostgreSQL エンジンのバージョン 10.11 を実行している DB クラスターのアップグレードに使用できるエンジンのメジャーバージョンが表示されます。

Linux、macOS、Unix の場合:

aws rds describe-db-engine-versions \ --engine aurora-postgresql \ --engine-version 10.11 \ --query 'DBEngineVersions[].ValidUpgradeTarget[?IsMajorVersionUpgrade == `true`].{EngineVersion:EngineVersion}' \ --output text

Windows の場合:

aws rds describe-db-engine-versions ^ --engine aurora-postgresql ^ --engine-version 10.11 ^ --query "DBEngineVersions[].ValidUpgradeTarget[?IsMajorVersionUpgrade == `true`].{EngineVersion:EngineVersion}" ^ --output text

メジャーバージョンのアップグレードを実施する方法

メジャーバージョンのアップグレードには、以前のバージョンのデータベースと下位互換性のないデータベースの変更が含まれる場合があります。その場合、既存のアプリケーションが適切に動作しなくなることがあります。そのため、Amazon Aurora では、メジャーバージョンアップグレードは自動的に適用されません。メジャーバージョンのアップグレードを行うには、DB クラスターを手動で変更します。

次の Aurora PostgreSQL のメジャーバージョンアップグレードを使用できます。

アップグレードする前に、検討対象のバージョンについて、クラスターの DB インスタンスクラスの可用性を確認してください。どれが Graviton2 ベースでどれがインテルベースであるかなど、DB インスタンスクラスの詳細については、「Aurora DB インスタンスクラス」を参照してください。

各メジャーバージョンには、パフォーマンスを向上させるために設計されたクエリオプティマイザの機能強化と変更が含まれています。ただし、ワークロードには、新しいバージョンでプランの実行を低下させるクエリが含まれる場合があります。そのため、本番環境でアップグレードする前に、パフォーマンスをテストして確認することをお勧めします。メジャーバージョンのアップグレード後の計画の安定性の確保 で説明されているように、クエリプラン管理 (QPM) 拡張機能を使用して、バージョン間でクエリプランの安定性を管理できます。

本番稼働用の DB クラスターにアップグレードを適用する前に、アップグレードを十分にテストして、アプリケーションが正常に動作することを確認してください。Aurora PostgreSQL DB クラスターをアップグレードする場合は、次のプロセスを踏むことをお勧めします。

  1. バージョン互換のパラメータグループを準備します。

    カスタム DB インスタンスまたは DB クラスターパラメータグループを使用している場合は、2 つのオプションがあります。

    • 新しい DB エンジンバージョンのデフォルト DB インスタンス、DB クラスターパラメータグループ、またはその両方を指定します。

    • 新しい DB エンジンバージョンの独自のカスタムパラメータグループを作成します。

    アップグレードリクエストの一部として DB インスタンスまたは DB クラスターの新しいパラメータグループを関連付ける場合は、パラメータを適用するために必ず、アップグレードの完了後にデータベースを再起動してください。パラメータグループの変更を適用するために DB インスタンスを再起動する必要がある場合、インスタンスのパラメータグループのステータスは pending-reboot と表示されます。インスタンスのパラメータグループのステータスは、コンソールまたは describe-db-instancesdescribe-db-clusters などの CLI コマンドを使用して確認できます。

  2. サポートされていない使用の確認

    • アップグレードを試みる前に、すべての準備済みのトランザクションをコミットまたはロールバックします。次のクエリを使用して、開いている準備済みのトランザクションがインスタンスにないことを確認します。

      SELECT count(*) FROM pg_catalog.pg_prepared_xacts;
    • アップグレードを試みる前に、使用されているすべての reg* データ型を削除します。regtyperegclass を除き、reg* データ型をアップグレードすることはできません。このデータ型は、Amazon Aurora でアップグレードに使用される pg_upgrade ユーティリティで保持することはできません。pg_upgrade ユーティリティの詳細については、PostgreSQL のドキュメントを参照してください。

      サポートされていない reg* データ型が使用されていないことを確認するには、データベースごとに次のクエリを使用します。

      SELECT count(*) FROM pg_catalog.pg_class c, pg_catalog.pg_namespace n, pg_catalog.pg_attribute a WHERE c.oid = a.attrelid AND NOT a.attisdropped AND a.atttypid IN ('pg_catalog.regproc'::pg_catalog.regtype, 'pg_catalog.regprocedure'::pg_catalog.regtype, 'pg_catalog.regoper'::pg_catalog.regtype, 'pg_catalog.regoperator'::pg_catalog.regtype, 'pg_catalog.regconfig'::pg_catalog.regtype, 'pg_catalog.regdictionary'::pg_catalog.regtype) AND c.relnamespace = n.oid AND n.nspname NOT IN ('pg_catalog', 'information_schema');
    • pgRouting 拡張機能がインストールされている Aurora PostgreSQL バージョン 10.18 以上の DB クラスターをアップグレードする場合には、バージョン 12.4 以上にアップグレードする前に拡張機能を削除してください。

  3. バックアップを実行します。

    アップグレードプロセスでは、アップグレード中に DB クラスターのスナップショットが作成されます。アップグレードプロセスの前に手動でもバックアップを行う場合の詳細については、「DB クラスタースナップショットの作成」を参照してください。

  4. メジャーバージョンアップグレードを実行する前に、特定のエクステンションを、利用可能な最新バージョンにアップグレードします。更新するエクステンションは以下のとおりです。

    • pgRouting

    • postgis_raster

    • postgis_tiger_geocoder

    • postgis_topology

    • address_standardizer

    • address_standardizer_data_us

    使用しているエクステンションごとに以下のコマンドを実行します。

    ALTER EXTENSION PostgreSQL-extension UPDATE TO 'new-version'

    詳細については、「PostgreSQL のエクステンションのアップグレード」を参照してください。

  5. バージョン 11.x にアップグレードする場合は、メジャーバージョンアップグレードを実行する前に、サポートされていないエクステンションを削除してください。削除するエクステンションは以下のとおりです。

    • chkpass

    • tsearch2

  6. ターゲットバージョンに応じて、unknown データ型を削除します。

    PostgreSQL バージョン 10 では、unknown データ型をサポートしていません。バージョン 9.6 のデータベースで unknown データ型を使用している場合、バージョン 10 にアップグレードすると次のようなエラーメッセージが表示されます。

    Database instance is in a state that cannot be upgraded: PreUpgrade checks failed: The instance could not be upgraded because the 'unknown' data type is used in user tables. Please remove all usages of the 'unknown' data type and try again."

    データベース内の unknown データ型を検索して、対象の列を削除したり、サポートされているデータ型に変更したりするには、各データベースに次の SQL コードを使用します。

    SELECT n.nspname, c.relname, a.attname FROM pg_catalog.pg_class c, pg_catalog.pg_namespace n, pg_catalog.pg_attribute a WHERE c.oid = a.attrelid AND NOT a.attisdropped AND a.atttypid = 'pg_catalog.unknown'::pg_catalog.regtype AND c.relkind IN ('r','m','c') AND c.relnamespace = n.oid AND n.nspname !~ '^pg_temp_' AND n.nspname !~ '^pg_toast_temp_' AND n.nspname NOT IN ('pg_catalog', 'information_schema');
  7. リハーサルのアップグレードを実行します。

    プロダクションデータベースのアップグレードを試みる前に、プロダクションデータベースの複製でメジャーバージョンアップグレードをテストすることを強くお勧めします。テスト用の複製のインスタンスを作成するには、最新のスナップショットからデータベースを復元するか、データベースのクローンを作成します。詳細については、「スナップショットからの復元」または「Amazon Aurora DB クラスターのボリュームのクローン作成」を参照してください。

    詳細については、「Aurora PostgreSQL エンジンの手動アップグレード」を参照してください。

  8. プロダクションインスタンスをアップグレードします。

    リハーサルのメジャーバージョンアップグレードが成功したら、安心してプロダクションデータベースをアップグレードできます。詳細については、「Aurora PostgreSQL エンジンの手動アップグレード」を参照してください。

    注記

    アップグレードのプロセス中は、クラスターのポイントインタイム復元を実行することはできません。バックアップ保持期間に 0 より大きい値が設定されている場合、Aurora PostgreSQL は、アップグレードプロセス中に DB クラスターのスナップショットを作成します。ポイントインタイムの復元を実行できるのは、アップグレードのスタート前およびインスタンスの自動スナップショットの完了後です。

    進行中のアップグレードについては、Amazon RDS を使用して、pg_upgrade ユーティリティで生成される 2 つのログを表示することができます。表示できるのは pg_upgrade_internal.log および pg_upgrade_server.log です。これらのログのファイル名には、Amazon Aurora によりタイムスタンプが追加されます。これらのログも、他のログと同様、表示できます。詳細については、「Amazon Aurora ログファイルのモニタリング」を参照してください。

  9. PostgreSQL のエクステンションをアップグレードします。PostgreSQL のアップグレードプロセスでは、PostgreSQL のエクステンションはアップグレードされません。詳細については、「PostgreSQL のエクステンションのアップグレード」を参照してください。

メジャーバージョンアップグレードが完了したら、以下のことをお勧めします。

  • ANALYZE 操作を実行して pg_statistic テーブルを更新します。

  • PostgreSQL バージョン 10 にアップグレードした場合は、使用しているハッシュインデックスで REINDEX を実行してください。ハッシュインデックスはバージョン 10 で変更されたため、再構築する必要があります。無効なハッシュインデックスを見つけるには、ハッシュインデックスを含む各データベースに対して次の SQL を実行します。

    SELECT idx.indrelid::regclass AS table_name, idx.indexrelid::regclass AS index_name FROM pg_catalog.pg_index idx JOIN pg_catalog.pg_class cls ON cls.oid = idx.indexrelid JOIN pg_catalog.pg_am am ON am.oid = cls.relam WHERE am.amname = 'hash' AND NOT idx.indisvalid;
  • アップグレードしたデータベースで同様のワークロードでアプリケーションをテストして、すべてが期待どおりに機能することを確認することをお勧めします。アップグレードが確認されたら、このテストインスタンスを削除できます。

Aurora PostgreSQL エンジンの手動アップグレード

AWS Management Console、AWS CLI、または RDS API により Aurora PostgreSQL DB クラスターのアップグレードを実行するには、以下の手順に従います。

注記

Aurora Global Database でマイナーアップグレードを実行する場合は、プライマリクラスターをアップグレードする前に、すべてのセカンダリクラスターをアップグレードします。

コンソールを使用して DB クラスターのエンジンバージョンをアップグレードするには

  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、[データベース] を選択して、アップグレードする DB クラスターを選択します。

  3. [Modify] を選択します。[DB クラスターの変更] ページが表示されます。

  4. [Engine version] (エンジンバージョン) で、新しいバージョンを選択します。

  5. [Continue] を選択して、変更の概要を確認します。

  6. 変更をすぐに反映させるには、[Apply immediately] を選択します。このオプションを選択すると、停止状態になる場合があります。詳細については、「Amazon Aurora DB クラスターの変更」を参照してください。

  7. 確認ページで、変更内容を確認します。正しい場合は、[クラスターの変更] を選択して変更を保存します。

    または、[戻る] を選択して変更を編集するか、[キャンセル] を選択して変更をキャンセルします。

DB クラスターのエンジンバージョンをアップグレードするには、CLI の modify-db-cluster コマンドを使用します。以下のパラメータを指定します。

  • --db-cluster-identifier - DB クラスターの名前。

  • --engine-version - アップグレード先のデータベースエンジンのバージョン番号です。有効なエンジンバージョンの詳細については、AWS CLI の describe-db-engine-versions コマンドを参照してください。

  • --allow-major-version-upgrade - --engine-version パラメータが DB クラスターの現在のメジャーバージョンとは異なるメジャーバージョンである場合に必須のフラグです。

  • --no-apply-immediately ​- 次のメンテナンス時間中に変更を適用します。今すぐ変更を適用するには、--apply-immediately を使用します。

Linux、macOS、Unix の場合:

aws rds modify-db-cluster \ --db-cluster-identifier mydbcluster \ --engine-version new_version \ --allow-major-version-upgrade \ --no-apply-immediately

Windows の場合:

aws rds modify-db-cluster ^ --db-cluster-identifier mydbcluster ^ --engine-version new_version ^ --allow-major-version-upgrade ^ --no-apply-immediately

DB クラスターのエンジンのバージョンをアップグレードするには、ModifyDBCluster オペレーションを使用します。以下のパラメータを指定します。

  • DBClusterIdentifier - DB クラスターの名前、例えば mydbcluster です。

  • EngineVersion - アップグレード先のデータベースエンジンのバージョン番号です。有効なエンジンバージョンについては、DescribeDBEngineVersions オペレーションを使用します。

  • AllowMajorVersionUpgrade - EngineVersion パラメータが DB クラスターの現在のメジャーバージョンとは異なるメジャーバージョンである場合に必須のフラグです。

  • ApplyImmediately - 変更をすぐに適用するか、次のメンテナンスウィンドウ中に適用するかを指定します。今すぐ変更を適用するには、値を true に設定します。次のメンテナンスウィンドウ中に変更を適用するには、値を false に設定します。

グローバルデータベースのインプレースメジャーアップグレード

Aurora Global Database の場合は、グローバルデータベースクラスターをアップグレードします。Aurora は、すべてのクラスターを同時かつ自動的にアップグレードし、すべてのクラスターで、同じエンジンバージョンが実行されることを保証します。これは、システムテーブルやデータファイル形式などの変更が、すべてのセカンダリクラスターに自動的にレプリケートされるためです。

メジャーバージョンのアップグレードを実施する方法」の手順を実行します。アップグレードする対象を指定するときは、そのデータベースに含まれるクラスターの 1 つではなく、グローバルデータベースクラスターを選択してください。

AWS Management Console を使用する場合、[Global database] (グローバルデータベース) のロールを持つアイテムを選択します。


                グローバルデータベースクラスターをアップグレードする

AWS CLI または RDS API を使用する場合は、modify-global-cluster コマンドまたは ModifyGlobalCluster オペレーションを呼び出して、アップグレードプロセスをスタートします。modify-db-clusterModifyDBCluster は使用しません。

注記

Aurora グローバルデータベースのメジャーバージョンアップグレードを実行している間、グローバルデータベースクラスターのカスタムパラメータグループを指定することはできません。グローバルクラスターの各リージョンにカスタムパラメータグループを作成し、アップグレード後に手動でリージョンクラスターに適用します。

目標復旧時点 (RPO) 機能がオンになっている場合、Aurora DB エンジンのメジャーバージョンアップグレードを実行できません。DB エンジンをアップグレードする前に、この機能がオフになっていることを確認してください。RPO 機能の詳細については、「Aurora PostgreSQL- ベースのグローバルデータベースの RPO (目標復旧時点) 管理」を参照してください。

PostgreSQL のマイナーバージョンの自動アップグレード

PostgreSQL の各メジャーバージョンでは、Amazon Aurora によって 1 つのマイナーバージョンが自動アップグレードバージョンとして指定されます。Amazon Aurora による、マイナーバージョンのテストが完了し承認されると、そのマイナーバージョンのアップグレードが、メンテナンスウィンドウの間に自動的に行われます。Aurora では、新しくリリースされたマイナーバージョンが、自動アップグレードバージョンとして自動的に設定されることはありません。Aurora によって新しい自動アップグレードバージョンが指定される前には、次のようないくつかの基準が考慮されます。

  • 既知のセキュリティの問題

  • PostgreSQL コミュニティバージョンのバグ

  • マイナーバージョンがリリースされてからのフリート全体の安定性

以下の AWS CLI コマンドとスクリプトを使用して、現在の自動アップグレードマイナーバージョンを確認できます。

aws rds describe-db-engine-versions --engine aurora-postgresql | grep -A 1 AutoUpgrade| grep -A 2 true |grep PostgreSQL | sort --unique | sed -e 's/"Description": "//g'

結果が返されない場合、マイナーバージョンの自動アップグレードが利用可能でなくスケジュールもされていません。

PostgreSQL DB インスタンスは、以下の基準を満たしている場合、メンテナンスウィンドウの間に自動的にアップグレードされます。

  • DB クラスターの自動マイナーバージョンアップグレードオプションが有効になっています。

  • DB クラスターで、現在の自動アップグレードマイナーバージョン未満の DB エンジンのマイナーバージョンが実行されている。

クラスター内のいずれかの DB インスタンスでマイナーバージョン自動アップグレードの設定がオンになっていない場合、Aurora はそのクラスター内のいずれのインスタンスも自動的にはアップグレードしません。クラスター内のすべての DB インスタンスで設定が一貫していることを確認してください。

自動マイナーバージョンアップグレードの実行

Aurora PostgreSQL DB クラスターのマイナーバージョンのアップグレードを実行するには、AWS Management Console、AWS CLIまたは RDS API 向けの次の手順を使用します。

DB クラスター内の DB インスタンスの変更」で説明しているように、一般的な手順に従ってクラスター内の DB インスタンスを変更します。クラスター内の DB インスタンスごとに、この手順を繰り返します。

コンソールを使用してクラスターの自動マイナーバージョンアップグレードを実装するには

  1. Amazon RDS コンソールにサインインして [Databases (データベース)] を選択し、自動マイナーバージョンアップグレードを有効化または無効化する DB クラスターを探します。

  2. 変更する DB クラスター内の各 DB インスタンスを選択します。各 DB インスタンスに順番に次の変更を適用します。

    1. 変更を選択します。

    2. [Maintenance (メンテナンス)] セクションで、[Enable auto minor version upgrade (自動マイナーバージョンアップグレードの有効化)] ボックスを選択します。

    3. [Continue] (続行) を選択して、変更の概要を確認します。

    4. (省略可能) 変更をすぐに適用するには、[すぐに適用] を選択します。

    5. 確認ページで、[DB インスタンスの変更] を選択します。

CLI を使用してマイナーバージョンアップグレードを実装するには、modify-db-instance コマンドを実行します。

modify-db-instance AWS CLIコマンドを呼び出すときに、--db-instance-identifierオプションのDB インスタンス名および--auto-minor-version-upgradeオプションのtrueを指定します。必要に応じて、この設定を DB インスタンスですぐに有効にするための--apply-immediatelyオプションを指定します。クラスター内の DB インスタンスごとに modify-db-instance コマンドを別個に実行します。

次のような CLI コマンドを使用して、Aurora PostgreSQL クラスター内のすべての DB インスタンスで自動マイナーバージョンアップグレードの有効化のステータスをチェックできます。

aws rds describe-db-instances \ --query '*[].{DBClusterIdentifier:DBClusterIdentifier,DBInstanceIdentifier:DBInstanceIdentifier,AutoMinorVersionUpgrade:AutoMinorVersionUpgrade}'

このコマンドでは、次のような出力が生成されます。

[ { "DBInstanceIdentifier": "db-t2-medium-instance", "DBClusterIdentifier": "cluster-57-2020-06-03-6411", "AutoMinorVersionUpgrade": true }, { "DBInstanceIdentifier": "db-t2-small-original-size", "DBClusterIdentifier": "cluster-57-2020-06-03-6411", "AutoMinorVersionUpgrade": false }, { "DBInstanceIdentifier": "instance-2020-05-01-2332", "DBClusterIdentifier": "cluster-57-2020-05-01-4615", "AutoMinorVersionUpgrade": true }, ... output omitted ...

API を使用してマイナーバージョンアップグレードを実装するには、ModifyDBInstance オペレーションを使用します。

ModifyDBInstance API オペレーションを呼び出して、DBInstanceIdentifierパラメータの DB クラスター名、AutoMinorVersionUpgradeパラメータのtrueを指定します。必要に応じて、ApplyImmediatelyパラメータをtrueに設定し、この設定を DB インスタンスですぐに有効にします。クラスター内の各 DB インスタンスで ModifyDBInstance オペレーションを個別に呼び出します。

PostgreSQL のエクステンションのアップグレード

PostgreSQL エンジンのアップグレードでは、PostgreSQL エクステンションは自動アップグレードされません。PostgreSQL エクステンションのインストールには rds_superuser 権限が必要で、エクステンションを使用するアクセス許可は、通常、それらのユーザー (ロール) にのみ付与されます。つまり、データベースエンジンのアップグレード後に Aurora PostgreSQL DB インスタンスのすべてのエクステンションをアップグレードすると、さまざまなユーザー (ロール) に関連する可能性があります。スクリプトを使用してアップグレードプロセスを自動化する場合も、この点に注意してください。PostgreSQL の権限とロールの詳細については、「Amazon Aurora PostgreSQL でのセキュリティ」を参照してください。

注記

Amazon RDS PostgreSQL DB インスタンスで PostGIS エクステンションを実行している場合、エクステンションをアップグレードするには、PostGIS ドキュメントの「PostGIS_Extensions_Upgrade」を参照してください。

エンジンのアップグレード後にエクステンションを更新するには、ALTER EXTENSION UPDATE のコマンドを使用します。

ALTER EXTENSION extension_name UPDATE TO 'new_version';

現在インストールされているエクステンションを一覧表示するには、次のコマンドで PostgreSQL の pg_extension カタログを使用します。

SELECT * FROM pg_extension;

インストールで使用可能な特定のエクステンションバージョンのリストを表示するには、次のコマンドで PostgreSQL の pg_available_extension_versions ビューを使用します。

SELECT * FROM pg_available_extension_versions;