Meningkatkan klaster DB Amazon Aurora PostgreSQL - Amazon Aurora

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Meningkatkan klaster DB Amazon Aurora PostgreSQL

Amazon Aurora membuat mesin basis data PostgreSQL versi baru tersedia di Wilayah AWS hanya setelah pengujian ekstensif. Anda dapat meningkatkan klaster DB Aurora PostgreSQL ke versi baru jika tersedia di Wilayah Anda.

Bergantung pada versi Aurora PostgreSQL yang sedang dijalankan oleh klaster DB Anda, tingkatkan ke rilis baru berupa peningkatan minor atau peningkatan mayor. Misalnya, tingkatkan klaster DB Aurora PostgreSQL 11.15 ke Aurora PostgreSQL 13.6 berupa peningkatan versi mayor. Peningkatan klaster DB Aurora PostgreSQL 13.3 ke Aurora PostgreSQL 13.7 berupa peningkatan versi minor. Pada topik berikut, Anda dapat menemukan informasi tentang cara melakukan kedua jenis peningkatan.

Ikhtisar proses peningkatan PostgreSQL Aurora

Berikut adalah perbedaan antara peningkatan versi mayor dan minor:

Peningkatan dan patch versi minor

Peningkatan dan patch versi minor hanya mencakup perubahan yang kompatibel mundur dengan aplikasi yang ada. Peningkatan dan patch versi minor akan tersedia bagi Anda hanya setelah Aurora PostgreSQL menguji dan menyetujuinya.

Peningkatan versi minor dapat diterapkan untuk Anda secara otomatis oleh Aurora. Jika Anda membuat klaster DB Aurora PostgreSQL baru, berarti opsi Aktifkan peningkatan versi minor telah dipilih sebelumnya. Kecuali Anda mematikan opsi ini, tingkatkan versi minor diterapkan secara otomatis selama periode pemeliharaan terjadwal Anda. Untuk informasi selengkapnya tentang opsi peningkatan versi minor otomatis (AmVU) dan cara mengubah klaster DB Aurora untuk menggunakannya, lihat Peningkatan versi minor otomatis untuk klaster DB Aurora.

Jika opsi peningkatan versi minor otomatis tidak diatur untuk klaster DB Aurora PostgreSQL, Aurora PostgreSQL Anda tidak akan ditingkatkan ke versi minor baru secara otomatis. Sebaliknya, ketika versi minor baru dirilis di cluster DB PostgreSQL Anda Wilayah AWS dan Aurora Anda menjalankan versi minor yang lebih lama, Aurora meminta Anda untuk meningkatkan. Ini dilakukan dengan menambahkan rekomendasi ke tugas pemeliharaan untuk klaster Anda.

Patch tidak dianggap sebagai peningkatan, dan tidak diterapkan secara otomatis. Aurora PostgreSQL meminta Anda untuk menerapkan patch apa pun dengan menambahkan rekomendasi ke tugas pemeliharaan untuk klaster DB Aurora PostgreSQL Anda. Untuk informasi selengkapnya, lihat Cara melakukan peningkatan versi minor dan menerapkan patch.

catatan

Patch yang menyelesaikan masalah keamanan atau masalah penting lainnya juga ditambahkan sebagai tugas pemeliharaan. Namun, patch ini diperlukan. Pastikan untuk menerapkan patch keamanan ke klaster DB Aurora PostgreSQL Anda jika tersedia dalam tugas pemeliharaan Anda yang tertunda.

Proses peningkatan melibatkan kemungkinan pemadaman singkat karena setiap instans dalam klaster ditingkatkan ke versi baru. Namun, setelah Aurora PostgreSQL versi 14.3.3, 13.7.3, 12.11.3, 11.16.3, 10.21.3 dan rilis lain yang lebih tinggi dari versi minor ini dan versi mayor yang lebih baru, proses peningkatan menggunakan fitur patching nol-waktu henti (ZDP). Fitur ini meminimalkan pemadaman, dan dalam banyak kasus sepenuhnya menghilangkannya. Untuk informasi selengkapnya, lihat Peningkatan rilis minor dan patching nol-waktu henti.

catatan

ZDP tidak didukung dalam kasus berikut:

  • Saat klaster DB Aurora PostgreSQL dikonfigurasi sebagai Aurora Serverless v1.

  • Ketika Aurora PostgreSQL DB cluster dikonfigurasi sebagai database global Aurora di sekunder. Wilayah AWS

  • Selama peningkatan instans pembaca di basis data global Aurora.

  • Selama patch OS dan peningkatan OS.

ZDP didukung untuk cluster Aurora PostgreSQL DB yang dikonfigurasi sebagai. Aurora Serverless v2

Peningkatan versi mayor

Tidak seperti peningkatan dan patch versi minor, Aurora PostgreSQL tidak memiliki opsi peningkatan versi mayor utama otomatis. Versi PostgreSQL mayor baru mungkin berisi perubahan basis data yang tidak kompatibel mundur dengan aplikasi yang ada. Fungsionalitas baru dapat menyebabkan aplikasi yang ada tidak berfungsi dengan benar.

Untuk mencegah masalah apa pun, sebaiknya Anda mengikuti proses yang diuraikan dalam Menguji peningkatan klaster DB produksi ke versi mayor baru sebelum meningkatkan instans DB di klaster DB Aurora PostgreSQL Anda. Pertama pastikan aplikasi Anda dapat berjalan di versi baru dengan mengikuti prosedur tersebut. Kemudian, Anda dapat meningkatkan klaster DB Aurora PostgreSQL ke versi baru secara manual.

Proses upgrade melibatkan kemungkinan pemadaman singkat ketika semua instance di cluster ditingkatkan ke versi baru. Proses perencanaan awal juga membutuhkan waktu. Sebaiknya Anda selalu melakukan tugas peningkatan selama periode pemeliharaan klaster atau saat pengoperasiannya minimum. Untuk informasi selengkapnya, lihat Cara melakukan peningkatan versi mayor.

catatan

Peningkatan versi minor dan peningkatan versi mayor mungkin melibatkan pemadaman singkat. Oleh karena itu, sebaiknya Anda melakukan atau menjadwalkan peningkatan selama periode pemeliharaan atau selama periode penggunaan rendah lainnya.

Klaster DB Aurora PostgreSQL terkadang memerlukan pembaruan sistem operasi. Pembaruan ini mungkin menyertakan pustaka glibc versi yang lebih baru. Selama pembaruan tersebut, sebaiknya Anda mengikuti pedoman seperti yang dijelaskan dalam Kolasi yang didukung di Aurora PostgreSQL.

Mendapatkan daftar versi yang tersedia di Wilayah AWS

Anda bisa mendapatkan daftar semua versi mesin yang tersedia sebagai target peningkatan untuk cluster Aurora PostgreSQL DB Anda dengan menanyakan Anda menggunakan perintah, sebagai berikut. Wilayah AWS describe-db-engine-versions AWS CLI

Untuk Linux, macOS, atau Unix:

aws rds describe-db-engine-versions \ --engine aurora-postgresql \ --engine-version version-number \ --query 'DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}' \ --output text

Untuk Windows:

aws rds describe-db-engine-versions ^ --engine aurora-postgresql ^ --engine-version version-number ^ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" ^ --output text

Misalnya, untuk mengidentifikasi target pemutakhiran yang valid untuk klaster Aurora PostgreSQL versi 12.10 DB, jalankan perintah berikut: AWS CLI

Untuk Linux, macOS, atau Unix:

aws rds describe-db-engine-versions \ --engine aurora-postgresql \ --engine-version 12.10 \ --query 'DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}' \ --output text

Untuk Windows:

aws rds describe-db-engine-versions ^ --engine aurora-postgresql ^ --engine-version 12.10 ^ --query "DBEngineVersions[*].ValidUpgradeTarget[*].{EngineVersion:EngineVersion}" ^ --output text

Dalam tabel ini, Anda dapat menemukan target peningkatan versi mayor dan minor yang tersedia untuk berbagai versi DB Aurora PostgreSQL.

Versi sumber saat ini Target peningkatan
16.1 16.2
15.6 16.2
15.5 16.2 16.1 15.6
15.4 16.2 16.1 15.6 15.5
15.3 16.2 16.1 15.6 15.5 15.4
15.2 16.2 16.1 15.6 15.5 15.4 15.3
14.11 16.2 15.6
14.10 16.2 16.1 15.6 15.5
14.9 16.2 16.1 15.6 15.5 15.4 14.11 14.10
14.8 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9
14.7 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8
14.6 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7
14.5 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6
14.4 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 14.5
14.3 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 14.5 14.4
13.14 16.2 15.6 14.11
13.13 16.2 16.1 15.6 15.5 14.11 14.10
13.12 16.2 16.1 15.6 15.5 15.4 14.11 14.10 14.9
13.11 16.2 16.1 15.6 15.5 15.4 15.3 14.11 14.10 14.9 14.8
13.10 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 13.14 13.13 13.12 13.11
13.9 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 13.14 13.11 13.10
13.8 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 14.5 13.14 13.13 13.12 13.11 13.10 13.9
13.7 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 14.5 14.4 14.3 13.14 13.13 13.12 13.11 13.10 13.9 13.8
12.18 16.2 15.6 14.11 13.14
12.17 16.2 16.1 15.6 15.5 14.11 14.10 13.13
12.16 16.2 16.1 15.6 15.5 15.4 14.11 14.10 14.9 13.14 13.13 13.12
12.15 16.2 16.1 15.6 15.5 15.4 15.3 14.11 14.10 14.9 14.8 13.14 13.13 13.12 13.11
12.14 16.2 16.1 15.6 15.5 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 13.14 13.13 13.12 13.11 13.10 12.15
12.13 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 13.14 13.13 13.12 13.11 13.10 13.9 12.17 12.16 12.15 12.14
12.12 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 14.5 13.14 13.13 13.12 13.11 13.10 13.9 12.17 12.16 12.15 13.8 12.15 12.14 12.13
12.11 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.5 14.4 14.3 13.14 13.13 13.12 13.11 13.10 13.9 13.8 13.7 12.15 12.14 12.13 12.12
12.9 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 13.14 13.13 13.12 13.11 13.10 13.9 13.8 13.7 12.17 12.16 12.15 12.14 12.13 12.12 12.11
11.21 16.2 16.1 15.6 15.5 15.4 14.11 14.10 14.9 13.14 13.13 13.12 12.17 12.16
11.9 16.2 16.1 15.6 15.5 15.4 15.3 15.2 14.11 14.10 14.9 14.8 14.7 14.6 13.14 13.13 13.12 13.11 13.10 13.9 12.17 12.16 12.15 12.14 12.13 12.12 12.11 12.09 11.21

Untuk versi apa pun yang Anda pertimbangkan, selalu periksa ketersediaan kelas instans DB klaster Anda. Misalnya, db.r4 tidak didukung untuk Aurora PostgreSQL 13. Jika klaster DB Aurora PostgreSQL Anda saat ini menggunakan kelas instans db.r4, Anda harus migrasi ke db.r5 sebelum mencoba peningkatan. Untuk informasi selengkapnya tentang kelas instans DB, termasuk kelas yang berbasis Graviton2 dan kelas yang berbasis Intel, lihat Kelas instans DB Aurora.

Cara melakukan peningkatan versi mayor

Peningkatan versi mayor mungkin berisi perubahan basis data yang tidak kompatibel mundur dengan basis data versi sebelumnya. Fungsionalitas baru dalam versi baru dapat menyebabkan aplikasi yang ada tidak berfungsi dengan benar. Untuk menghindari masalah, Amazon Aurora tidak menerapkan peningkatan versi mayor secara otomatis. Sebaliknya, sebaiknya Anda merencanakan peningkatan versi utama secara cermat dengan mengikuti langkah-langkah berikut:

  1. Pilih versi mayor yang diinginkan dari daftar target yang tersedia dari yang tercantum untuk versi Anda dalam tabel. Anda bisa mendapatkan daftar versi yang tepat yang tersedia di versi Anda saat ini dengan menggunakan AWS CLI. Wilayah AWS Untuk detailnya, lihat Mendapatkan daftar versi yang tersedia di Wilayah AWS.

  2. Verifikasi apakah aplikasi Anda berfungsi seperti yang diharapkan saat deployment uji coba versi baru. Untuk informasi tentang proses lengkapnya, lihat Menguji peningkatan klaster DB produksi ke versi mayor baru.

  3. Setelah memverifikasi bahwa aplikasi Anda berfungsi seperti yang diharapkan saat deployment uji coba, Anda dapat meningkatkan klaster. Untuk detailnya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru.

catatan

Anda dapat melakukan peningkatan versi mayor dari versi berbasis Babelfish for Aurora PostgreSQL 13 mulai dari versi 13.6 ke versi berbasis Aurora PostgreSQL 14 mulai dari versi 14.6. Babelfish for Aurora PostgreSQL 13.4 dan 13.5 tidak mendukung peningkatan versi mayor.

Anda bisa mendapatkan daftar versi mesin yang tersedia sebagai target peningkatan versi utama untuk cluster DB PostgreSQL Aurora Anda dengan menanyakan Anda menggunakan perintah, sebagai berikut. Wilayah AWS describe-db-engine-versions AWS CLI

Untuk Linux, macOS, atau Unix:

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

Untuk Windows:

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

Dalam beberapa kasus, versi yang ingin ditingkatkan bukanlah target untuk versi Anda saat ini. Dalam kasus seperti itu, gunakan informasi dalam versions table untuk melakukan peningkatan versi minor hingga klaster Anda memiliki versi dengan target yang Anda pilih di baris targetnya.

Menguji peningkatan klaster DB produksi ke versi mayor baru

Setiap versi mayor baru mencakup penyempurnaan pada pengoptimal kueri yang dirancang untuk meningkatkan performa. Namun, beban kerja Anda mungkin mencakup kueri yang menyebabkan rencana berperforma lebih buruk di versi baru. Itulah mengapa kami menyarankan Anda menguji dan meninjau performa sebelum melakukan peningkatan dalam produksi. Anda dapat mengelola stabilitas rencana kueri di seluruh versi dengan menggunakan ekstensi Manajemen Rencana Kueri (QPM), seperti yang dijelaskan dalam Memastikan stabilitas rencana setelah upgrade versi mayor.

Sebelum meningkatkan klaster DB Aurora PostgreSQL produksi ke versi mayor baru, sebaiknya Anda menguji peningkatan untuk memverifikasi bahwa semua aplikasi Anda berfungsi dengan benar:

  1. Siapkan grup parameter yang kompatibel dengan versi.

    Jika menggunakan instans DB kustom atau grup parameter klaster DB, Anda dapat memilih dari dua opsi:

    1. Tentukan instans DB default, grup parameter klaster DB, atau keduanya untuk versi mesin DB baru.

    2. Buat grup parameter kustom untuk versi mesin DB baru.

    Jika Anda menautkan instans DB baru atau grup parameter klaster DB sebagai bagian dari permintaan peningkatan, pastikan untuk mem-boot ulang basis data setelah proses peningkatan selesai untuk menerapkan parameter. Jika instans DB perlu di-boot ulang untuk menerapkan perubahan grup parameter, status grup parameter instans akan menampilkan pending-reboot. Anda dapat melihat status grup parameter instance di konsol atau dengan menggunakan perintah CLI seperti describe-db-instancesatau. describe-db-clusters

  2. Periksa penggunaan yang tidak didukung:

    • Lakukan atau putar kembali semua transaksi terbuka yang disiapkan sebelum mencoba peningkatan. Anda dapat menggunakan kueri berikut untuk memverifikasi bahwa tidak ada transaksi terbuka yang disiapkan di instans Anda.

      SELECT count(*) FROM pg_catalog.pg_prepared_xacts;
    • Hapus semua penggunaan jenis data reg* sebelum mencoba peningkatan. Kecuali untuk regtype dan regclass, Anda tidak dapat meningkatkan jenis data reg*. Utilitas pg_upgrade (yang digunakan oleh Amazon Aurora untuk melakukan peningkatan) tidak dapat mempertahankan jenis data ini. Untuk mempelajari selengkapnya tentang utilitas ini, lihat pg_upgrade dalam dokumentasi PostgreSQL.

      Untuk memverifikasi bahwa jenis data reg* yang tidak didukung tidak digunakan, gunakan kueri berikut untuk setiap basis data.

      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');
    • Jika Anda meningkatkan Aurora PostgreSQL versi 10.18 atau klaster DB yang lebih tinggi yang memiliki pgRouting ekstensi terinstal, lepaskan ekstensi sebelum ditingkatkan ke versi 12.4 atau lebih tinggi.

      Jika Anda meningkatkan Aurora PostgreSQL versi 10.x yang memiliki ekstensi pg_repack versi 1.4.3 terinstal, lepaskan ekstensi sebelum ditingkatkan ke versi yang lebih tinggi.

  3. Periksa basis data template1 dan template0.

    Agar peningkatan berhasil, basis data template 1 dan template 0 harus ada dan harus tercantum sebagai template. Untuk melakukannya, gunakan perintah berikut:

    SELECT datname, datistemplate FROM pg_database; datname | datistemplate -----------+--------------- template0 | t rdsadmin | f template1 | t postgres | f

    Dalam output perintah, nilai datistemplate untuk basis data template1 dan template0 seharusnya t.

  4. Hapus slot replikasi logis.

    Proses peningkatan tidak dapat dilanjutkan jika klaster DB Aurora PostgreSQL menggunakan slot replikasi logis apa pun. Slot replikasi logis biasanya digunakan untuk tugas migrasi data jangka pendek, seperti memigrasi data menggunakan AWS DMS atau untuk mereplikasi tabel dari database ke danau data, alat BI, atau target lainnya. Sebelum meningkatkan, pastikan Anda mengetahui tujuan dari setiap slot replikasi logis yang ada, dan konfirmasikan bahwa menghapusnya tidak akan jadi masalah. Anda dapat memeriksa slot replikasi logis menggunakan kueri berikut:

    SELECT * FROM pg_replication_slots;

    Jika slot replikasi logis masih digunakan, Anda tidak boleh menghapusnya, dan Anda tidak dapat melanjutkan dengan peningkatan. Namun, jika slot replikasi logis tidak diperlukan, Anda dapat menghapusnya menggunakan SQL berikut:

    SELECT pg_drop_replication_slot(slot_name);

    Skenario replikasi logis yang menggunakan ekstensi pglogical juga harus memiliki slot yang dijatuhkan dari simpul penerbit untuk peningkatan versi utama yang berhasil pada simpul tersebut. Namun, Anda dapat memulai ulang proses replikasi dari simpul pelanggan setelah peningkatan. Untuk informasi selengkapnya, lihat Membangun kembali replikasi logis setelah peningkatan besar.

  5. Lakukan pencadangan.

    Proses peningkatan membuat snapshot klaster DB dari klaster DB Anda selama peningkatan. Jika Anda juga ingin melakukan pencadangan manual sebelum proses peningkatan, lihat Membuat snapshot klaster DB untuk informasi selengkapnya.

  6. Tingkatkan ekstensi tertentu ke versi terbaru yang tersedia sebelum melakukan peningkatan versi utama. Ekstensi yang akan diperbarui meliputi:

    • pgRouting

    • postgis_raster

    • postgis_tiger_geocoder

    • postgis_topology

    • address_standardizer

    • address_standardizer_data_us

    Jalankan perintah berikut untuk setiap ekstensi yang baru diinstal.

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

    Untuk informasi selengkapnya, lihat Meningkatkan ekstensi PostgreSQL. Untuk mempelajari selengkapnya tentang cara meningkatkan PostGIS, lihat Langkah 6: Meningkatkan ekstensi PostGIS.

  7. Jika Anda meningkatkan ke versi 11.x, buang ekstensi yang tidak didukung sebelum melakukan peningkatan versi utama. Ekstensi yang perlu dibuang meliputi:

    • chkpass

    • tsearch2

  8. Buang jenis data unknown, bergantung pada versi target Anda.

    PostgreSQL versi 10 tidak mendukung jenis data unknown. Jika basis data versi 9.6 menggunakan jenis data unknown, tingkatkan ke versi 10 akan menampilkan pesan kesalahan seperti berikut.

    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."

    Untuk menemukan jenis data unknown di basis data Anda sehingga Anda dapat menghapus kolom tersebut atau mengubahnya ke jenis data yang didukung, gunakan kode SQL berikut untuk setiap basis data.

    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');
  9. Lakukan peningkatan dry-run.

    Sebaiknya Anda menguji peningkatan versi utama pada duplikat basis data produksi sebelum mencoba peningkatan pada basis data produksi Anda. Anda dapat memantau rencana eksekusi pada instans pengujian duplikat untuk setiap kemungkinan regresi rencana eksekusi dan untuk mengevaluasi performanya. Untuk membuat instans pengujian duplikat, Anda dapat memulihkan basis data Anda dari snapshot terakhir atau mengkloning basis data Anda. Untuk informasi selengkapnya, lihat Memulihkan dari snapshot atau Mengkloning volume untuk klaster DB Amazon Aurora.

    Untuk informasi selengkapnya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru.

  10. Tingkatkan instans produksi Anda.

    Jika peningkatan versi utama operasi dry-run berhasil, Anda seharusnya dapat meningkatkan basis data produksi dengan percaya diri. Untuk informasi selengkapnya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru.

    catatan

    Selama proses peningkatan, Aurora PostgreSQL mengambil snapshot klaster DB jika periode retensi cadangan klaster lebih besar dari 0. Anda tidak dapat melakukan point-in-time pemulihan klaster Anda selama proses ini. Kemudian, Anda dapat melakukan point-in-time pemulihan ke waktu sebelum pemutakhiran dimulai dan setelah snapshot otomatis instans Anda selesai. Namun, Anda tidak dapat melakukan point-in-time pemulihan ke versi minor sebelumnya.

    Untuk informasi tentang peningkatan yang sedang berlangsung, Anda dapat menggunakan Amazon RDS untuk melihat dua log yang dibuat oleh utilitas pg_upgrade. Log tersebut adalah pg_upgrade_internal.log dan pg_upgrade_server.log. Amazon Aurora menambahkan stempel waktu ke nama file untuk log ini. Anda dapat melihat log ini sebagaimana Anda dapat melihat log lainnya. Untuk informasi selengkapnya, lihat Memantau file log Amazon Aurora.

  11. Meningkatkan ekstensi PostgreSQL. Proses peningkatan PostgreSQL tidak meningkatkan ekstensi PostgreSQL apa pun. Untuk informasi selengkapnya, lihat Meningkatkan ekstensi PostgreSQL.

Setelah Anda menyelesaikan peningkatan versi utama, sebaiknya ikuti langkah berikut:

  • Jalankan operasi ANALYZE untuk menyegarkan tabel pg_statistic. Anda harus melakukannya untuk setiap basis data pada semua instans DB PostgreSQL Anda. Statistik pengoptimal tidak ditransfer selama peningkatan versi utama, jadi Anda perlu membuat ulang semua statistik untuk menghindari masalah performa. Jalankan perintah tanpa parameter apa pun untuk menghasilkan statistik untuk semua tabel reguler dalam basis data saat ini, sebagai berikut:

    ANALYZE VERBOSE;

    Bendera VERBOSE bersifat opsional, tetapi kemajuannya akan ditampilkan jika digunakan. Untuk informasi selengkapnya, lihat ANALYZE di dokumentasi PostgreSQL.

    catatan

    Jalankan ANALYZE pada sistem Anda setelah peningkatan untuk menghindari masalah performa.

  • Jika Anda melakukan peningkatan ke PostgreSQL versi 10, jalankan REINDEX pada setiap indeks hash yang dimiliki. Indeks hash diubah di versi 10 dan harus dibuat ulang. Untuk menemukan indeks hash yang tidak valid, jalankan SQL berikut untuk setiap basis data yang berisi indeks hash.

    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;
  • Sebaiknya Anda menguji aplikasi di basis data yang ditingkatkan dengan beban kerja serupa untuk memverifikasi bahwa semuanya berfungsi sesuai harapan. Setelah peningkatan diverifikasi, Anda dapat menghapus instans pengujian ini.

Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru

Saat Anda memulai proses peningkatan ke versi mayor baru, Aurora PostgreSQL mengambil snapshot dari klaster DB Aurora sebelum membuat perubahan apa pun pada klaster Anda. Snapshot ini dibuat hanya untuk peningkatan versi mayor, bukan peningkatan versi minor. Saat proses peningkatan selesai, Anda dapat menemukan snapshot ini di antara snapshot manual yang tercantum di bagian Snapshot di konsol RDS. Nama snapshot mencakup preupgrade sebagai awalan, nama klaster DB Aurora PostgreSQL Anda, versi sumber, versi target, dan tanggal serta stempel waktu, seperti yang ditunjukkan pada contoh berikut.

preupgrade-docs-lab-apg-global-db-12-8-to-13-6-2022-05-19-00-19

Setelah peningkatan selesai, Anda dapat menggunakan snapshot yang dibuat dan disimpan Aurora dalam daftar snapshot manual untuk memulihkan klaster DB ke versi sebelumnya, jika perlu.

Tip

Secara umum, snapshot menyediakan banyak cara untuk memulihkan klaster DB Aurora ke berbagai titik waktu. Untuk mempelajari lebih lanjut, lihat Memulihkan dari snapshot klaster DB dan Memulihkan klaster DB ke waktu tertentu. Namun, Aurora PostgreSQL tidak mendukung penggunaan snapshot untuk memulihkan ke versi minor sebelumnya.

Selama proses peningkatan versi mayor, Aurora mengalokasikan volume dan mengkloning klaster DB Aurora PostgreSQL sumber. Jika peningkatan gagal karena alasan apa pun, Aurora PostgreSQL menggunakan klon ini untuk memutar kembali peningkatan. Setelah lebih dari 15 klon dari volume sumber dialokasikan, klon berikutnya menjadi salinan lengkap dan memakan waktu lebih lama. Hal ini juga dapat menyebabkan proses peningkatan memakan waktu lebih lama. Jika Aurora PostgreSQL membatalkan peningkatan, perhatikan hal berikut:

  • Anda dapat melihat entri dan metrik penagihan untuk volume awal dan volume kloning yang dialokasikan selama peningkatan. Aurora PostgreSQL membersihkan volume ekstra setelah periode retensi cadangan klaster melampaui waktu peningkatan .

  • Salinan snapshot lintas-wilayah berikutnya dari klaster ini akan menjadi salinan lengkap, bukan salinan tambahan.

Untuk meningkatkan instans DB yang membentuk klaster Anda dengan aman, Aurora PostgreSQL menggunakan utilitas pg_upgrade. Setelah peningkatan penulis selesai, setiap instans pembaca mengalami pemadaman singkat saat ditingkatkan ke versi mayor baru. Untuk mempelajari selengkapnya tentang utilitas PostgreSQL ini, lihat pg_upgrade di dokumentasi PostgreSQL.

Anda dapat memutakhirkan cluster Aurora PostgreSQL DB Anda ke versi baru dengan menggunakan, API, atau RDS. AWS Management Console AWS CLI

Untuk meningkatkan versi mesin klaster DB
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Basis data, lalu pilih klaster DB yang ingin Anda tingkatkan.

  3. Pilih Ubah. Halaman Ubah klaster DB akan muncul.

  4. Untuk Versi mesin, pilih versi baru.

  5. Pilih Lanjutkan dan periksa ringkasan perubahan.

  6. Untuk segera menerapkan perubahan, pilih Terapkan segera. Dalam beberapa kasus, pemadaman dapat terjadi jika opsi ini dipilih. Untuk informasi selengkapnya, lihat Memodifikasi klaster DB Amazon Aurora.

  7. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih Ubah Klaster untuk menyimpan perubahan.

    Atau pilih Kembali untuk mengedit perubahan atau Batal untuk membatalkan perubahan.

Untuk memutakhirkan versi mesin cluster DB, gunakan modify-db-cluster AWS CLI perintah. Tentukan parameter berikut:

  • --db-cluster-identifier – Nama klaster DB.

  • --engine-version – Nomor versi peningkatan mesin basis data. Untuk informasi tentang versi mesin yang valid, gunakan AWS CLI describe-db-engine-versionsperintah.

  • --allow-major-version-upgrade – Tanda yang diperlukan saat parameter --engine-version merupakan versi utama yang berbeda dengan versi utama saat ini dari klaster DB.

  • --no-apply-immediately – Terapkan perubahan selama periode pemeliharaan berikutnya. Untuk segera menerapkan perubahan, gunakan --apply-immediately.

contoh

Untuk Linux, macOS, atau Unix:

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

Untuk Windows:

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

Untuk meningkatkan versi mesin klaster DB, gunakan operasi ModifyDBCluster. Tentukan parameter berikut:

  • DBClusterIdentifier – Nama klaster DB, misalnya mydbcluster.

  • EngineVersion – Nomor versi peningkatan mesin basis data. Untuk informasi tentang versi mesin yang valid, gunakan operasi DescribeDB EngineVersions.

  • AllowMajorVersionUpgrade – Tanda yang diperlukan saat parameter EngineVersion merupakan versi utama yang berbeda dengan versi utama saat ini dari klaster DB.

  • ApplyImmediately – Apakah akan menerapkan perubahan secara langsung atau selama periode pemeliharaan berikutnya. Untuk segera menerapkan perubahan, tetapkan nilai ke true. Untuk menerapkan perubahan selama periode pemeliharaan berikutnya, tetapkan nilai ke false.

Peningkatan mayor untuk basis data global

Untuk klaster basis data global Aurora, proses peningkatan akan meningkatkan semua klaster DB yang membentuk basis data global Aurora pada saat yang bersamaan. Itu dilakukan untuk memastikan bahwa masing-masing menjalankan versi Aurora PostgreSQL yang sama. Ini juga memastikan bahwa setiap perubahan pada tabel sistem, format file data, dan sebagainya secara otomatis direplikasi ke semua klaster sekunder.

Untuk meningkatkan klaster basis data global ke Aurora PostgreSQL versi mayor baru, sebaiknya Anda menguji aplikasi Anda pada versi yang ditingkatkan, seperti yang dijelaskan dalam Menguji peningkatan klaster DB produksi ke versi mayor baru. Pastikan untuk menyiapkan grup parameter cluster DB dan pengaturan grup parameter DB Anda untuk masing-masing Wilayah AWS di database global Aurora Anda sebelum peningkatan sebagaimana dirinci. step 1. Menguji peningkatan klaster DB produksi ke versi mayor baru

Jika klaster basis data global Aurora PostgreSQL Anda memiliki sasaran titik pemulihan (RPO) yang ditetapkan untuk parameter rds.global_db_rpo-nya, pastikan untuk mengatur ulang parameter sebelum melakukan peningkatan. Proses peningkatan versi mayor tidak berfungsi jika RPO diaktifkan. Secara default, parameter ini dinonaktifkan. Untuk informasi lebih lanjut tentang basis data global Aurora PostgreSQL dan RPO, lihat Mengelola RPO untuk basis data global berbasis Aurora PostgreSQL.

Jika Anda memverifikasi bahwa aplikasi Anda dapat berjalan sesuai harapan saat deployment uji coba versi baru, Anda dapat memulai proses peningkatan. Untuk melakukannya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru. Pastikan untuk memilih item tingkat atas dari daftar Basis Data di konsol RDS, Basis data global, seperti yang ditunjukkan pada gambar berikut.

Gambar konsol yang menampilkan basis data global Aurora, klaster DB Aurora Serverless, dan klaster DB Aurora PostgreSQL lainnya

Seperti halnya modifikasi apa pun, Anda dapat mengonfirmasi bahwa Anda ingin melanjutkan proses saat diminta.

Gambar konsol yang menampilkan permintaan untuk mengonfirmasi proses peningkatan klaster DB Aurora PostgreSQL

Alih-alih menggunakan konsol, Anda dapat memulai proses peningkatan dengan menggunakan AWS CLI atau RDS API. Seperti halnya konsol, Anda beroperasi pada klaster basis data global Aurora, bukan konstituennya, sebagai berikut:

Sebelum melakukan upgrade versi minor

Kami menyarankan Anda melakukan tindakan berikut untuk mengurangi waktu henti selama upgrade versi minor:

Cara melakukan peningkatan versi minor dan menerapkan patch

Peningkatan dan tambalan versi minor Wilayah AWS hanya tersedia setelah pengujian yang ketat. Sebelum merilis peningkatan dan patch, Aurora PostgreSQL menguji untuk memastikan bahwa masalah keamanan yang diketahui, bug, dan masalah lain yang muncul setelah rilis versi komunitas minor tidak mengganggu stabilitas armada Aurora PostgreSQL secara keseluruhan.

Karena Aurora PostgreSQL membuat versi minor baru tersedia, instans yang membentuk klaster DB Aurora PostgreSQL Anda dapat ditingkatkan secara otomatis selama periode pemeliharaan yang Anda tentukan. Agar hal ini terjadi, opsi Aktifkan peningkatan versi minor otomatis pada klaster DB Aurora PostgreSQL Anda harus diaktifkan. Semua instans DB yang membentuk klaster DB Aurora PostgreSQL Anda harus mengaktifkan opsi peningkatan versi minor otomatis (AmVU) sehingga peningkatan minor diterapkan di seluruh klaster.

Tip

Pastikan opsi Aktifkan peningkatan versi minor otomatis diaktifkan untuk semua instans DB PostgreSQL yang membentuk klaster DB Aurora PostgreSQL. Opsi ini harus diaktifkan agar setiap instans di klaster DB berfungsi. Untuk informasi tentang cara mengatur Peningkatan versi minor otomatis, dan cara kerja pengaturan saat diterapkan di tingkat klaster dan instans, lihat Peningkatan versi minor otomatis untuk klaster DB Aurora.

Anda dapat memeriksa nilai opsi Enable auto minor version upgrade untuk semua cluster Aurora PostgreSQL DB Anda dengan menggunakan perintah dengan kueri berikut. describe-db-instances AWS CLI

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

Kueri ini menampilkan daftar semua klaster DB Aurora dan instans--nya dengan nilai false atau true untuk status pengaturan AutoMinorVersionUpgrade. Perintah seperti yang ditunjukkan mengasumsikan bahwa Anda telah AWS CLI dikonfigurasi untuk menargetkan default Wilayah AWS Anda.

Untuk informasi selengkapnya tentang opsi AmVU dan cara memodifikasi klaster DB Aurora untuk menggunakannya, lihat Peningkatan versi minor otomatis untuk klaster DB Aurora.

Anda dapat meningkatkan klaster DB Aurora PostgreSQL ke versi minor baru baik dengan menanggapi tugas pemeliharaan, atau memodifikasi klaster untuk menggunakan versi baru.

Anda dapat mengidentifikasi peningkatan atau patch yang tersedia untuk klaster DB Aurora PostgreSQL dengan menggunakan konsol RDS dan membuka menu Rekomendasi. Di sana, Anda dapat menemukan daftar berbagai masalah pemeliharaan seperti Versi minor lama. Bergantung pada lingkungan produksi Anda, Anda dapat memilih untuk Menjadwalkan peningkatan atau mengambil tindakan segera, dengan memilih Terapkan sekarang, seperti yang ditunjukkan di bawah.

Gambar konsol yang menampilkan Rekomendasi untuk melakukan peningkatan ke versi minor yang lebih baru.

Untuk mempelajari lebih lanjut tentang cara memelihara klaster DB Aurora, termasuk cara menerapkan patch dan peningkatan versi minor secara manual, lihat Memelihara klaster DB Amazon Aurora.

Peningkatan rilis minor dan patching nol-waktu henti

Meningkatkan klaster DB Aurora PostgreSQL melibatkan kemungkinan pemadaman. Selama proses peningkatan, basis data dimatikan karena sedang ditingkatkan. Jika Anda memulai peningkatan saat basis data sibuk, Anda akan kehilangan semua koneksi dan transaksi yang sedang diproses oleh klaster DB. Jika Anda menunggu hingga basis data idle untuk melakukan peningkatan, Anda mungkin harus menunggu lama.

Fitur patching nol-waktu henti (ZDP) meningkatkan proses peningkatan. Dengan ZDP, baik peningkatan versi minor maupun patch dapat diterapkan dengan dampak minimal ke klaster DB Aurora PostgreSQL Anda. ZDP digunakan saat menerapkan patch atau peningkatan versi minor yang lebih baru ke versi Aurora PostgreSQL dan rilis lain yang lebih tinggi dengan versi minor ini dan versi mayor yang lebih baru. Artinya, tingkatkan ke versi minor baru dari salah satu rilis ini dan seterusnya akan menggunakan ZDP.

Tabel berikut menunjukkan versi Aurora PostgreSQL dan kelas instans DB tempat ZDP tersedia:

Versi Kelas instans db.r* Kelas instans db.t* Kelas instans db.x* Kelas instans db.serverless
Versi 10.21.0 dan versi 10.21 yang lebih tinggi Ya Ya Ya N/A
Versi 11.16.0 dan versi 11.16 yang lebih tinggi Ya Ya Ya N/A
Versi 11.17 dan versi yang lebih tinggi Ya Ya Ya N/A
Versi 12.11.0 dan versi 12.11 yang lebih tinggi Ya Ya Ya N/A
Versi 12.12 dan versi yang lebih tinggi Ya Ya Ya N/A
Versi 13.7.0 dan versi 13.7 yang lebih tinggi Ya Ya Ya N/A
Versi 13.8 dan versi yang lebih tinggi Ya Ya Ya Ya
Versi 14.3.1 dan versi 14.3 yang lebih tinggi Ya Ya Ya N/A
Versi 14.4.0 dan versi 14.4 yang lebih tinggi Ya Ya Ya N/A
Versi 14.5 dan versi yang lebih tinggi Ya Ya Ya Ya
Versi 15.3 dan versi yang lebih tinggi Ya Ya Ya Ya

ZDP bekerja dengan mempertahankan koneksi klien saat ini ke klaster DB Aurora PostgreSQL Anda selama proses peningkatan Aurora PostgreSQL. Namun, dalam kasus berikut, koneksi akan dibatalkan agar ZDP selesai:

  • Kueri atau transaksi berjalan lama sedang berlangsung.

  • Pernyataan bahasa definisi data (DDL) sedang berlangsung.

  • Tabel sementara atau kunci tabel sedang digunakan.

  • Semua sesi mendengarkan di saluran pemberitahuan.

  • Kursor dalam status 'WITH HOLD' sedang digunakan.

  • Koneksi TLSv1.3 atau TLSv1.1 sedang digunakan.

Selama proses peningkatan menggunakan ZDP, mesin basis data mencari titik tenang untuk menjeda semua transaksi baru. Tindakan ini melindungi basis data selama patch dan peningkatan. Untuk memastikan bahwa aplikasi Anda berjalan lancar dengan transaksi yang dijeda, sebaiknya Anda mengintegrasikan logika coba lagi ke dalam kode Anda. Pendekatan ini memastikan bahwa sistem dapat mengelola waktu henti singkat tanpa gagal dan dapat mencoba kembali transaksi baru setelah peningkatan.

Saat ZDP berhasil diselesaikan, sesi aplikasi dipertahankan kecuali untuk sesi koneksinya hilang, dan mesin basis data dimulai ulang saat peningkatan masih berlangsung. Meskipun memulai ulang mesin basis data dapat menyebabkan penurunan throughput sementara, hal ini biasanya hanya berlangsung selama beberapa detik atau paling lama kira-kira satu menit.

Dalam beberapa kasus, patching nol-waktu henti (ZDP) mungkin tidak berhasil. Misalnya, perubahan parameter yang berada dalam status pending pada klaster DB Aurora PostgreSQL Anda atau instansnya mengganggu ZDP.

Anda dapat menemukan metrik dan peristiwa untuk operasi ZDP di halaman Peristiwa di konsol. Peristiwa ini termasuk dimulainya peningkatan ZDP dan penyelesaian peningkatan. Dalam hal ini Anda dapat menemukan durasi pemrosesannya, dan jumlah koneksi yang dipertahankan dan hilang yang terjadi selama mulai ulang. Anda dapat menemukan detailnya di log kesalahan basis data Anda.

Meningkatkan mesin Aurora PostgreSQL ke versi minor baru

Anda dapat memutakhirkan cluster Aurora PostgreSQL DB Anda ke versi minor baru dengan menggunakan konsol, API, atau RDS. AWS CLI Sebelum melakukan peningkatan, sebaiknya Anda mengikuti praktik terbaik yang sama yang kami sarankan untuk peningkatan versi mayor. Seperti halnya versi mayor baru, versi minor baru juga dapat memiliki peningkatan pengoptimal, seperti perbaikan, yang dapat menyebabkan regresi rencana kueri. Untuk memastikan stabilitas rencana, sebaiknya Anda menggunakan ekstensi Manajemen Rencana Kueri (QPM) seperti yang dijelaskan dalam Memastikan stabilitas rencana setelah upgrade versi mayor.

Untuk meningkatkan versi mesin klaster DB Aurora PostgreSQL
  1. Masuk ke AWS Management Console dan buka konsol Amazon RDS di https://console.aws.amazon.com/rds/.

  2. Di panel navigasi, pilih Basis data, lalu pilih klaster DB yang ingin Anda tingkatkan.

  3. Pilih Ubah. Halaman Ubah klaster DB akan muncul.

  4. Untuk Versi mesin, pilih versi baru.

  5. Pilih Lanjutkan dan periksa ringkasan perubahan.

  6. Untuk segera menerapkan perubahan, pilih Terapkan segera. Dalam beberapa kasus, pemadaman dapat terjadi jika opsi ini dipilih. Untuk informasi selengkapnya, lihat Memodifikasi klaster DB Amazon Aurora.

  7. Di halaman konfirmasi, tinjau perubahan Anda. Jika sudah benar, pilih Ubah Klaster untuk menyimpan perubahan.

    Atau pilih Kembali untuk mengedit perubahan atau Batal untuk membatalkan perubahan.

Untuk memutakhirkan versi mesin cluster DB, gunakan modify-db-cluster AWS CLI perintah dengan parameter berikut:

  • --db-cluster-identifier – Nama klaster DB Aurora PostgreSQL Anda.

  • --engine-version – Nomor versi peningkatan mesin basis data. Untuk informasi tentang versi mesin yang valid, gunakan AWS CLI describe-db-engine-versionsperintah.

  • --no-apply-immediately – Terapkan perubahan selama periode pemeliharaan berikutnya. Untuk menerapkan perubahan secara langsung, gunakan --apply-immediately.

Untuk Linux, macOS, atau Unix:

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

Untuk Windows:

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

Untuk meningkatkan versi mesin klaster DB, gunakan operasi ModifyDBCluster. Tentukan parameter berikut:

  • DBClusterIdentifier – Nama klaster DB, misalnya mydbcluster.

  • EngineVersion – Nomor versi peningkatan mesin basis data. Untuk informasi tentang versi mesin yang valid, gunakan operasi DescribeDB EngineVersions.

  • ApplyImmediately – Apakah akan menerapkan perubahan secara langsung atau selama periode pemeliharaan berikutnya. Untuk segera menerapkan perubahan, tetapkan nilai ke true. Untuk menerapkan perubahan selama periode pemeliharaan berikutnya, tetapkan nilai ke false.

Meningkatkan ekstensi PostgreSQL

Meningkatkan klaster DB Aurora PostgreSQL Anda ke versi mayor atau minor baru tidak akan meningkatkan ekstensi PostgreSQL secara bersamaan. Untuk sebagian besar ekstensi, Anda meningkatkan ekstensi setelah peningkatan versi mayor atau minor selesai. Namun, dalam beberapa kasus, Anda meningkatkan ekstensi sebelum meningkatkan mesin DB Aurora PostgreSQL. Untuk informasi selengkapnya, lihat list of extensions to update di Menguji peningkatan klaster DB produksi ke versi mayor baru.

Menginstal ekstensi PostgreSQL membutuhkan hak istimewa rds_superuser. Biasanya, rds_superuser mendelegasikan izin atas ekstensi tertentu untuk pengguna yang relevan (peran), untuk memfasilitasi pengelolaan ekstensi yang ditentukan. Itu berarti bahwa tugas meningkatkan semua ekstensi di klaster DB Aurora PostgreSQL Anda mungkin melibatkan banyak pengguna (peran) yang berbeda. Perhatikan hal ini terutama jika Anda ingin mengotomatiskan proses peningkatan dengan menggunakan skrip. Untuk informasi selengkapnya tentang hak istimewa dan peran PostgreSQL, lihat Keamanan dengan Amazon Aurora PostgreSQL.

catatan

Untuk informasi selengkapnya tentang ekstensi PostGIS, lihat Mengelola data spasial dengan ekstensi PostGIS (Langkah 6: Meningkatkan ekstensi PostGIS).

Untuk memperbarui ekstensi pg_repack, hapus ekstensi dan kemudian buat versi baru di instans DB yang ditingkatkan. Untuk informasi selengkapnya, lihat pg_repack installation di dokumentasi pg_repack.

Untuk memperbarui ekstensi setelah peningkatan mesin, gunakan perintah ALTER EXTENSION UPDATE.

ALTER EXTENSION extension_name UPDATE TO 'new_version';

Untuk mencantumkan ekstensi yang saat ini terinstal, gunakan katalog pg_extension PostgreSQL dalam perintah berikut.

SELECT * FROM pg_extension;

Untuk melihat daftar versi ekstensi tertentu yang tersedia untuk penginstalan Anda, gunakan tampilan pg_available_extension_versions PostgreSQL dalam perintah berikut.

SELECT * FROM pg_available_extension_versions;

Teknik peningkatan blue/green alternatif

Dalam situasi tertentu, prioritas utama Anda adalah melakukan switchover langsung dari klaster lama ke klaster yang ditingkatkan. Dalam situasi seperti itu, Anda dapat menggunakan proses multistep yang menjalankan cluster side-by-side lama dan baru. Di sini, Anda mereplikasi data dari klaster lama ke klaster baru hingga Anda siap untuk mengambil alih klaster baru. Untuk detailnya, lihat Menggunakan Deployment Blue/Green Amazon RDS untuk pembaruan basis data.