Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.
Mengaktifkan GTID-based replikasi untuk replika baca yang ada untuk RDS untuk MySQL
Untuk instans MySQL DB yang ada dengan replika baca yang tidak GTID-based menggunakan replikasi, Anda dapat GTID-based mengonfigurasi replikasi antara instans DB dan replika baca.
Untuk mengaktifkan GTID-based replikasi replika baca yang ada
-
Jika instans DB atau replika baca apa pun menggunakan RDS for MySQL versi 8.0 yang lebih rendah dari versi 8.0.26, tingkatkan instans DB atau replika baca ke 8.0.26 atau MySQL versi 8.0 yang lebih tinggi. Semua RDS untuk MySQL 8.4 versi dan 5.7 versi mendukung replikasi. GTID-based
Untuk informasi selengkapnya, lihat Upgrade RDS untuk mesin MySQL DB.
-
(Opsional) Atur ulang parameter GTID dan uji perilaku instans DB dan replika baca:
-
Pastikan grup parameter yang terkait dengan instans DB MySQL dan setiap replika baca memiliki
enforce_gtid_consistencyyang diatur keWARN.Untuk informasi selengkapnya tentang cara mengatur parameter konfigurasi menggunakan grup parameter, lihat Grup parameter untuk RDS.
-
Jika Anda mengubah grup parameter dari instans DB, boot ulang instans DB tersebut. Jika Anda mengubah grup parameter untuk sebuah replika baca, boot ulang replika baca tersebut.
Untuk informasi selengkapnya, lihat Mem-boot ulang instans DB DB.
-
Jalankan instans DB dan replika baca Anda dengan beban kerja normal Anda dan monitor file log.
Jika Anda melihat peringatan tentang GTID-incompatible transaksi, sesuaikan aplikasi Anda sehingga hanya menggunakan GTID-compatible fitur. Pastikan instans DB tidak menghasilkan peringatan tentang GTID-incompatible transaksi sebelum melanjutkan ke langkah berikutnya.
-
-
Setel ulang parameter GTID untuk GTID-based replikasi yang memungkinkan transaksi anonim hingga replika baca memproses semuanya.
-
Pastikan grup parameter yang terkait dengan instans DB dan setiap replika baca memiliki pengaturan parameter sebagai berikut:
-
gtid_mode–ON_PERMISSIVE -
enforce_gtid_consistency–ON
-
-
Jika Anda mengubah grup parameter dari instans DB, boot ulang instans DB tersebut. Jika Anda mengubah grup parameter untuk sebuah replika baca, boot ulang replika baca tersebut.
-
-
Tunggu hingga semua transaksi anonim Anda direplikasi. Untuk memeriksa apakah semua transaksi tersebut sudah direplikasi, lakukan hal berikut:
-
Jalankan pernyataan berikut pada instans DB sumber Anda.
MySQL 8.4
SHOW BINARY LOG STATUS;MySQL 5.7 dan 8.0
SHOW MASTER STATUS;Perhatikan nilai di kolom
FiledanPosition. -
Pada setiap replika baca, gunakan informasi file dan posisi dari instans sumber dalam langkah sebelumnya untuk menjalankan kueri berikut.
SELECT MASTER_POS_WAIT('file',position);Misalnya, jika nama file-nya adalah
mysql-bin-changelog.000031dan posisinya adalah107, jalankan pernyataan berikut.SELECT MASTER_POS_WAIT('mysql-bin-changelog.000031', 107);Jika replika baca melewati posisi yang ditentukan, kueri akan segera ditampilkan. Jika tidak, fungsi tersebut akan menunggu. Lanjutkan ke langkah berikutnya jika kueri menampilkan semua replika baca.
-
-
Setel ulang parameter GTID hanya untuk GTID-based replikasi.
-
Pastikan grup parameter yang terkait dengan instans DB dan setiap replika baca memiliki pengaturan parameter sebagai berikut:
-
gtid_mode–ON -
enforce_gtid_consistency–ON
-
-
Boot ulang instans DB dan setiap replika baca.
-
-
Pada setiap replika baca, jalankan prosedur berikut.
MySQL 8.4 dan versi utama yang lebih tinggi
CALL mysql.rds_set_source_auto_position(1);MySQL 8.0 dan versi utama yang lebih rendah
CALL mysql.rds_set_master_auto_position(1);