Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
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 |
---|---|
Aurora PostgreSQL (Ikan Babelfish) | Aurora PostgreSQL (Ikan Babelfish) |
16.8 (4.5.0) |
17.4 (5.1.0) |
16.6 (4.4.0) |
17.4 (5.1.0) |
16.4 (4.3.0) |
17.4 (5.1.0) |
16.3 (4.2.0) |
17.4 (5.1.0) |
16.2 (4.1.0) |
17.4 (5.1.0) |
16.1 (4.0.0) |
17.4 (5.1.0) |
15.12 (3.9.0) |
17.4 (5.1.0) 16.8 (4.5.0) |
15.10 (3.8.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0) |
15.8 (3.7.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0) |
15.7 (3.6.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0) |
15.6 (3.5.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0) |
15.5 (3.4.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) |
15.4 (3.3.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) |
15.3 (3.2.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) |
15.2 (3.1.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) |
14.17 (2.12.0) |
17.4 (5.1.0) 16.8 (4.5.0) 15.12 (3.9.0) |
14.15 (2.11.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0) 15.12 (3.9.0), 15.10 (3.8.0) |
14.13 (2.10.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0) |
14.12 (2.9.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0) |
14.11 (2.8.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.0) |
14.10 (2.7.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.0), 15.5 (3.4.0) |
14.9 (2.6.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.0), 15.5 (3.4.0), 15.4 (3.3.0) |
14.8 (2.5.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.0), 15.5 (3.4.0), 15.4 (3.3.0), 15.3 (3.2.0) |
14.7 (2.4.0) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.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) |
17.4 (5.1.0) 16.8 (4.5.0), 16.6 (4.4.0), 16.4 (4.3.0), 16.3 (4.2.0), 16.2 (4.1.0), 16.1 (4.0.0) 15.12 (3.9.0), 15.10 (3.8.0), 15.8 (3.7.0), 15.7 (3.6.0), 15.6 (3.5.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.3.0) |
14.6 (2.3.0) |
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
-
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.
-
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.
-
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. Untuk informasi selengkapnya, lihat Memulihkan dari snapshot klaster DB dan Pertimbangan grup parameter.
-
Siapkan grup parameter klaster DB kustom 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. PesanInvalidParameterCombination
kesalahan muncul di AWS Management Console atau di output darimodify-db-cluster
AWS CLI perintah. -
-
Gunakan AWS Management Console or AWS CLI untuk membuat grup parameter cluster DB kustom. Pilih keluarga Aurora PostgreSQL yang berlaku untuk versi Aurora PostgreSQL yang Anda inginkan untuk peningkatan.
Tip
Kelompok parameter dikelola di Wilayah AWS level tersebut. Ketika Anda bekerja dengan AWS CLI, Anda dapat mengkonfigurasi dengan Region default alih-alih menentukan
--region
dalam perintah. Untuk mempelajari lebih lanjut tentang menggunakan AWS CLI, lihat Penyiapan cepat di Panduan AWS Command Line Interface Pengguna.
Melakukan peningkatan versi mayor
-
Tingkatkan klaster DB Aurora PostgreSQL ke versi mayor baru. Untuk informasi selengkapnya, lihat Meningkatkan mesin Aurora PostgreSQL ke versi mayor baru.
-
Boot ulang 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 -Usa
-P********
-ddbname
Saat terhubung, gunakan perintah SQL berikut untuk menghasilkan pernyataan yang dapat Anda gunakan untuk melakukan seeding terhadap 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 AWS CLI perintah yang menjelaskan cara memutakhirkan cluster Aurora PostgreSQL 13.6.4 DB 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 upgrade.
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
' \ --regionus-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 cluster DB di Amazon Aurora.
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