Meningkatkan klaster Babelfish Anda ke versi baru - Amazon Aurora

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

Meningkatkan klaster Babelfish Anda ke versi baru

Versi baru Babelfish tersedia dengan beberapa rilis baru dari mesin basis data Aurora PostgreSQL setelah versi 13.4. Setiap rilis baru Babelfish memiliki nomor versi sendiri. Sama halnya dengan Aurora PostgreSQL, Babelfish menggunakan skema penamaan major.minor.patch untuk versi. Misalnya, rilis Babelfish pertama, Babelfish versi 1.0.0, tersedia sebagai bagian dari Aurora PostgreSQL 13.4.0.

Babelfish tidak memerlukan proses instalasi terpisah. Seperti dibahas dalam Membuat klaster DB Babelfish for Aurora PostgreSQL, Aktifkan Babelfish adalah opsi yang Anda pilih saat membuat klaster DB Aurora PostgreSQL.

Demikian pula, Anda tidak dapat meningkatkan Babelfish secara independen dari klaster Aurora DB yang mendukung. Untuk meningkatkan klaster DB Babelfish for Aurora PostgreSQL yang ada ke versi baru Babelfish, tingkatkan klaster DB Aurora PostgreSQL ke versi baru yang mendukung versi Babelfish yang ingin Anda gunakan. Prosedur yang Anda ikuti untuk peningkatan tergantung versi Aurora PostgreSQL yang mendukung deployment Babelfish Anda, sebagai berikut.

Peningkatan versi mayor

Anda harus meningkatkan versi Aurora PostgreSQL berikut ke Aurora PostgreSQL 14.6 dan versi yang lebih tinggi sebelum meningkatkan ke Aurora PostgreSQL versi 15.2.

  • Aurora PostgreSQL 13.8 dan semua versi yang lebih tinggi

  • Aurora PostgreSQL 13.7.1 dan semua versi minor yang lebih tinggi

  • Aurora PostgreSQL 13.6.4 dan semua versi minor yang lebih tinggi

Anda dapat meningkatkan Aurora PostgreSQL 14.6 dan versi yang lebih tinggi ke Aurora PostgreSQL 15.2 dan versi yang lebih tinggi.

Meningkatkan klaster DB Aurora PostgreSQL ke versi mayor baru melibatkan beberapa tugas awal. Untuk informasi selengkapnya, lihat Cara melakukan peningkatan versi mayor. Agar berhasil meningkatkan klaster DB Babelfish for Aurora PostgreSQL, Anda perlu membuat grup parameter klaster DB khusus untuk versi PostgreSQL Aurora baru. Grup parameter baru ini harus berisi pengaturan parameter Babelfish yang sama dengan klaster yang Anda tingkatkan. Untuk informasi selengkapnya dan untuk tabel sumber dan peningkatan pemutakhiran versi mayor, lihat Meningkatkan Babelfish ke versi mayor baru.

Peningkatan dan patch versi minor

Versi dan patch minor tidak memerlukan pembuatan grup parameter klaster DB baru untuk peningkatan. Versi dan patch minor dapat menggunakan proses peningkatan versi minor, baik itu diterapkan secara otomatis atau manual. Untuk informasi selengkapnya dan tabel sumber dan target versi, lihat Meningkatkan Babelfish ke versi minor baru.

catatan

Sebelum melakukan peningkatan mayor atau minor, terapkan semua tugas pemeliharaan yang tertunda ke klaster Babelfish for Aurora PostgreSQL Anda.

Meningkatkan Babelfish ke versi minor baru

Versi minor baru hanya mencakup perubahan yang kompatibel dengan versi sebelumnya. Versi patch mencakup perbaikan penting untuk versi minor setelah dirilis. Misalnya, label versi untuk rilis pertama Aurora PostgreSQL 13.4 adalah Aurora PostgreSQL 13.4.0. Beberapa patch untuk versi minor telah dirilis hingga saat ini, termasuk Aurora PostgreSQL 13.4.1, 13.4.2, dan 13.4.4. Anda dapat menemukan patch yang tersedia untuk setiap versi Aurora PostgreSQL dalam daftar rilis Patch di bagian atas catatan rilis Aurora PostgreSQL untuk versi tersebut. Untuk mengetahui contohnya, lihat PostgreSQL 14.3 di Catatan Rilis untuk Aurora PostgreSQL.

Jika klaster DB Aurora PostgreSQL Anda dikonfigurasi dengan opsi Peningkatan versi minor otomatis, klaster DB Babelfish for Aurora PostgreSQL Anda ditingkatkan secara otomatis selama jendela pemeliharaan cluster. Untuk mempelajari lebih lanjut tentang peningkatan versi minor otomatis (AMvU) dan cara menggunakannya, lihat Peningkatan versi minor otomatis untuk klaster DB Aurora. Jika klaster Anda tidak menggunakan AmVU, Anda dapat meningkatkan klaster DB Babelfish for Aurora PostgreSQL secara manual ke versi minor baru baik dengan merespons tugas pemeliharaan, atau mengubah klaster untuk menggunakan versi baru.

Saat Anda memilih versi Aurora PostgreSQL yang akan diinstal dan saat Anda melihat klaster DB Aurora PostgreSQL yang ada di AWS Management Console, versi hanya menampilkan digit major.minor. Misalnya, gambar berikut dari Konsol untuk klaster DB Babelfish for Aurora PostgreSQL dengan Aurora PostgreSQL 13.4 merekomendasikan untuk meningkatkan klaster ke versi 13.7, rilis minor baru dari Aurora PostgreSQL.

Peningkatan versi minor tersedia untuk klaster DB Aurora PostgreSQL dengan Babelfish.

Untuk mendapatkan detail versi lengkap, termasuk level patch, Anda dapat menjalankan kueri pada klaster DB Aurora PostgreSQL menggunakan fungsi Aurora PostgreSQL aurora_version. Untuk informasi selengkapnya, lihat aurora_version di Referensi fungsi Aurora PostgreSQL. Anda dapat menemukan contoh penggunaan fungsi dalam prosedur To use the PostgreSQL port to query for version information di Mengidentifikasi versi Babelfish Anda.

Tabel berikut menunjukkan versi Aurora PostgreSQL dan Babelfish dan versi target yang tersedia yang dapat mendukung proses peningkatan versi minor.

Versi sumber saat ini

Target peningkatan terbaru

Versi peningkatan lainnya yang tersedia

Aurora PostgreSQL Babelfish Aurora PostgreSQLBabelfish Versi Aurora PostgreSQL dengan opsi Babelfish

15.4

3.3.0

15.5

3.4.0

15.3.2

3.2.1

15.5

3.4.0

15.4

15.2.4

3.1.3

15.5

3.4.0

15.4

15.3

14.9.1

2.6.0

14.10

2.7.0

14.8.2

2.5.1

14.10

2.7.0

14.9.1

14.7.4

2.4.3

14.10

2.7.0

14.9.1

14.8.2

14.6.4

2.3.3

14.10

2.7.0

14.9.1

14.8.2

14.7.4

14.5.3

2.2.3

14.10

2.7.0

14.9.1

14.8.2

14.7.4

14.6.4

14.3.1

2.1.1

14.6

2.3.0

14.3.0

2.1.0

14.6

2.3.0

14.3.1

13.8

1.4.0

13.9

1.5

13.7.1

1.3.1

13.9

1.5

13.8

13.7.0

1.3.0

13.9

1.5

13.7.1

13.6.4

1.2.4

13.9

1.5

13.7

13.6.3

1.2.1

13.9

1.5

13.7

13.6.4

13.6.2

1.2.1

13.9

1.5

13.7

13.6.4

13.6.1

1.2.0

13.9

1.5

13.7

13.6.4

13.6.0

1.2.0

13.9

1.5

13.7

13.6.4

13,5

1.1.0

13.9

1.5

13.7

13.6

13.4

1.0.0

13.9

1.5

13.7

13.6

13,5

Meningkatkan Babelfish ke versi mayor baru

Untuk peningkatan versi mayor, Anda harus terlebih dahulu meningkatkan klaster DB Babelfish for Aurora PostgreSQL ke versi yang mendukung peningkatan versi mayor. Untuk mewujudkannya, terapkan pembaruan patch atau peningkatan versi minor ke klaster DB Anda. Untuk informasi selengkapnya, lihat Meningkatkan Babelfish ke versi minor baru.

Tabel berikut menunjukkan versi Aurora PostgreSQL dan versi Babelfish yang dapat mendukung peningkatan versi mayor.

Versi sumber saat ini

Target peningkatan terbaru yang tersedia

Versi lain yang tersedia (peningkatan versi minor)

Aurora PostgreSQL Babelfish Aurora PostgreSQLBabelfish Versi Aurora PostgreSQL (versi Babelfish)

15.5

3.4.0

16.1

4.0.0

15.4

3.3.0

16.1

4.0.0

15.3

3.2.0

16.1

4.0.0

15.2

3.1.0

16.1

4.0.0

14.10

2.7.0

15.5

3.4.0

14.9

2.6.0

15.5

3.4.0

15.4 (3.3.0)

14.8

2.5.0

15.5

3.4.0

15.4 (3.3.0)

15.3 (3.2.0)

14.7

2.4.0

15.5

3.4.0

15.4 (3.3.0)

15.3 (3.2.0)

15.2 (3.1.0)

14.6

2.3.0

15.5

3.4.0

15.4 (3.3.0)

15.3 (3.2.0)

15.2 (3.1.0)

13.9

1.5.0

14.6

2.3.0

13.8

1.4.0

14.6

2.3.0

13.7.1

1.3.1

14.6

2.3.0

13.8 (1.4)

13.6.4

1.2.2

14.6

2.3.0

13.8 (1.4)

13.7 (1.3)

Sebelum meningkatkan Babelfish ke versi mayor baru

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

Sebelum melakukan peningkatan versi mayor

  1. Identifikasi versi Babelfish dari klaster DB Aurora PostgreSQL Anda yang ada dengan menggunakan perintah yang diuraikan di Mengidentifikasi versi Babelfish Anda. Versi Aurora PostgreSQL dan informasi versi Babelfish ditangani oleh PostgreSQL, jadi ikuti langkah-langkah terperinci dalam prosedur To use the PostgreSQL port to query for version information untuk mengetahui detailnya.

  2. Verifikasi apakah versi Anda mendukung peningkatan versi mayor. Untuk daftar versi yang mendukung fitur peningkatan versi mayor, lihat Meningkatkan Babelfish ke versi minor baru dan lakukan tugas prapeningkatan yang diperlukan.

    Misalnya, jika versi Babelfish Anda berjalan pada klaster DB Aurora PostgreSQL 13.5 dan Anda ingin meningkatkan ke Aurora PostgreSQL 15.2, maka pertama-tama terapkan semua rilis dan patch minor untuk meningkatkan klaster Anda ke Aurora PostgreSQL 14.6 atau versi yang lebih tinggi. Saat klaster Anda berada di versi 14.6 atau lebih tinggi, lanjutkan dengan proses peningkatan versi mayor.

  3. Buat snapshot manual dari klaster DB Babelfish Anda saat ini sebagai cadangan. Cadangan ini memungkinkan Anda memulihkan klaster ke versi Aurora PostgreSQL, versi Babelfish, dan memulihkan semua data ke status sebelum peningkatan. Untuk informasi selengkapnya, lihat Membuat snapshot klaster DB. Pastikan untuk menyimpan grup parameter klaster DB kustom Anda yang ada untuk menggunakannya lagi jika Anda memutuskan untuk memulihkan klaster ini ke status prapeningkatan. Lihat informasi yang lebih lengkap di Memulihkan dari snapshot klaster DB dan Pertimbangan grup parameter.

  4. Siapkan grup parameter klaster DB khusus untuk versi Aurora PostgreSQL target. Duplikasi pengaturan untuk parameter Babelfish dari klaster DB Babelfish for Aurora PostgreSQL Anda saat ini. Untuk menemukan daftar semua parameter Babelfish, lihat Pengaturan grup parameter klaster DB untuk Babelfish. Untuk peningkatan versi mayor, parameter berikut memerlukan pengaturan yang sama dengan klaster DB sumber. Agar peningkatan berhasil, semua pengaturan harus sama.

    • rds.babelfish_status

    • babelfishpg_tds.tds_default_numeric_precision

    • babelfishpg_tds.tds_default_numeric_scale

    • babelfishpg_tsql.database_name

    • babelfishpg_tsql.default_locale

    • babelfishpg_tsql.migration_mode

    • babelfishpg_tsql.server_collation_name

    Awas

    Jika pengaturan untuk parameter Babelfish dalam grup parameter klaster DB kustom untuk versi PostgreSQL Aurora baru tidak cocok dengan nilai parameter klaster yang Anda tingkatkan, operasi ModifyDBCluster gagal. Pesan kesalahan InvalidParameterCombination muncul di AWS Management Console atau di output dari perintah AWS CLI modify-db-cluster.

  5. Gunakan AWS Management Console atau AWS CLI untuk membuat grup parameter klaster DB kustom. Pilih keluarga Aurora PostgreSQL yang berlaku untuk versi Aurora PostgreSQL yang Anda inginkan untuk peningkatan.

    Tip

    Grup parameter dikelola di level Wilayah AWS tersebut. Ketika Anda bekerja dengan AWS CLI, Anda dapat mengonfigurasi dengan Wilayah default alih-alih menentukan --region dalam perintah. Untuk mempelajari selengkapnya tentang menggunakan AWS CLI, lihat Pengaturan cepat dalam Panduan Pengguna AWS Command Line Interface.

Melakukan peningkatan versi mayor

  1. Tingkatkan klaster DB Aurora PostgreSQL ke versi mayor baru. Untuk informasi selengkapnya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru.

  2. Reboot instans penulis klaster, sehingga pengaturan parameter dapat berlaku.

Setelah meningkatkan ke versi mayor baru

Setelah peningkatan versi mayor ke versi Aurora PostgreSQL baru, nilai IDENTITY dalam tabel dengan kolom IDENTITY mungkin lebih besar (+32) daripada nilai sebelum peningkatan. Hasilnya adalah ketika baris berikutnya dimasukkan ke dalam tabel tersebut, nilai kolom identitas yang dibuat melompat ke angka +32 dan memulai urutan dari sana. Kondisi ini tidak akan berdampak negatif pada fungsi klaster DB Babelfish Anda. Namun, jika mau, Anda dapat mengatur ulang objek urutan berdasarkan nilai maksimum kolom. Untuk melakukannya, sambungkan ke port T-SQL pada instans penulis Babelfish Anda menggunakan sqlcmd atau klien SQL Server lainnya. Untuk informasi selengkapnya, lihat Menggunakan klien SQL Server untuk terhubung ke klaster DB Anda.

sqlcmd -S bfish-db.cluster-123456789012.aws-region.rds.amazonaws.com,1433 -U sa -P ******** -d dbname

Saat terhubung, gunakan perintah SQL berikut untuk menghasilkan pernyataan yang dapat Anda gunakan untuk menyemai objek urutan terkait. Perintah SQL ini berfungsi untuk konfigurasi Babelfish basis data tunggal dan beberapa basis data. Untuk informasi selengkapnya tentang kedua model deployment ini, lihat Menggunakan Babelfish dengan satu atau beberapa basis data.

DECLARE @schema_prefix NVARCHAR(200) = '' IF current_setting('babelfishpg_tsql.migration_mode') = 'multi-db' SET @schema_prefix = db_name() + '_' SELECT 'SELECT setval(pg_get_serial_sequence(''' + @schema_prefix + schema_name(tables.schema_id) + '.' + tables.name + ''', ''' + columns.name + '''),(select max(' + columns.name + ') FROM ' + schema_name(tables.schema_id) + '.' + tables.name + ')); 'FROM sys.tables tables JOIN sys.columns columns ON tables.object_id = columns.object_id WHERE columns.is_identity = 1 GO

Kueri menghasilkan serangkaian pernyataan SELECT yang kemudian dapat Anda jalankan untuk mengatur ulang nilai IDENTITY maksimum dan menutup celah apa pun. Berikut ini menunjukkan output saat menggunakan basis data SQL Server sampel, Northwind, berjalan pada klaster Babelfish.

-------------------------------------------------------- SELECT setval(pg_get_serial_sequence('northwind_dbo.categories', 'categoryid'),(select max(categoryid) FROM dbo.categories)); SELECT setval(pg_get_serial_sequence('northwind_dbo.orders', 'orderid'),(select max(orderid) FROM dbo.orders)); SELECT setval(pg_get_serial_sequence('northwind_dbo.products', 'productid'),(select max(productid) FROM dbo.products)); SELECT setval(pg_get_serial_sequence('northwind_dbo.shippers', 'shipperid'),(select max(shipperid) FROM dbo.shippers)); SELECT setval(pg_get_serial_sequence('northwind_dbo.suppliers', 'supplierid'),(select max(supplierid) FROM dbo.suppliers)); (5 rows affected)

Jalankan pernyataan satu per satu untuk mengatur ulang nilai urutan.

Contoh: Meningkatkan klaster DB Babelfish ke rilis mayor

Dalam contoh ini, Anda dapat menemukan serangkaian perintah AWS CLI yang menjelaskan cara meningkatkan klaster DB Aurora PostgreSQL 13.6.4 yang menjalankan Babelfish versi 1.2.2 ke Aurora PostgreSQL 14.6. Pertama, Anda membuat grup parameter klaster DB kustom untuk Aurora PostgreSQL 14. Selanjutnya, Anda memodifikasi nilai parameter agar sesuai dengan sumber Aurora PostgreSQL versi 13 Anda. Terakhir, Anda melakukan peningkatan dengan memodifikasi klaster sumber. Untuk informasi selengkapnya, lihat Pengaturan grup parameter klaster DB untuk Babelfish. Dalam topik itu, Anda juga dapat menemukan informasi tentang menggunakan AWS Management Console untuk melakukan peningkatan.

Gunakan perintah create-db-cluster-parameter-group CLI untuk membuat grup parameter cluster DB untuk versi baru.

Untuk Linux, macOS, atau Unix:

aws rds create-db-cluster-parameter-group \ --db-cluster-parameter-group-name docs-lab-babelfish-apg-14 \ --db-parameter-group-family aurora-postgresql14 \ --description 'New custom parameter group for upgrade to new major version' \ --region us-west-1

Saat Anda mengeluarkan perintah ini, grup parameter klaster DB kustom dibuat di Wilayah AWS. Output Anda akan terlihat seperti berikut ini.

{ "DBClusterParameterGroup": { "DBClusterParameterGroupName": "docs-lab-babelfish-apg-14", "DBParameterGroupFamily": "aurora-postgresql14", "Description": "New custom parameter group for upgrade to new major version", "DBClusterParameterGroupArn": "arn:aws:rds:us-west-1:111122223333:cluster-pg:docs-lab-babelfish-apg-14" } }

Untuk informasi selengkapnya, lihat Membuat grup parameter klaster DB.

Gunakan perintah modify-db-cluster-parameter-group CLI untuk memodifikasi pengaturan sehingga cocok dengan cluster sumber.

Untuk Windows:

aws rds modify-db-cluster-parameter-group --db-cluster-parameter-group-name docs-lab-babelfish-apg-14 ^ --parameters "ParameterName=rds.babelfish_status,ParameterValue=on,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tds.tds_default_numeric_precision,ParameterValue=38,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tds.tds_default_numeric_scale,ParameterValue=8,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tsql.database_name,ParameterValue=babelfish_db,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tsql.default_locale,ParameterValue=en-US,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tsql.migration_mode,ParameterValue=single-db,ApplyMethod=pending-reboot" ^ "ParameterName=babelfishpg_tsql.server_collation_name,ParameterValue=sql_latin1_general_cp1_ci_as,ApplyMethod=pending-reboot"

Responsnya terlihat seperti berikut.

{ "DBClusterParameterGroupName": "docs-lab-babelfish-apg-14" }

Gunakan perintah modify-db-clusterCLI untuk memodifikasi cluster untuk menggunakan versi baru dan grup parameter cluster DB kustom baru. Anda juga menentukan argumen --allow-major-version-upgrade, seperti yang ditunjukkan dalam sampel berikut.

aws rds modify-db-cluster \ --db-cluster-identifier docs-lab-bfish-apg-14 \ --engine-version 14.6 \ --db-cluster-parameter-group-name docs-lab-babelfish-apg-14 \ --allow-major-version-upgrade \ --region us-west-1 \ --apply-immediately

Gunakan perintah reboot-db-instanceCLI untuk me-reboot instance penulis cluster, sehingga pengaturan parameter dapat berlaku.

aws rds reboot-db-instance \ --db-instance-identifier docs-lab-bfish-apg-14-instance-1\ --region us-west-1