Topik ini menjelaskan cara membuat instans replikasi asli ApsaraDB RDS untuk MySQL atau meningkatkan instans yang ada menjadi instans replikasi asli. Topik ini juga mencakup izin dan batasan instans replikasi asli.
Prasyarat
Sebelum membuat instans replikasi asli baru atau meningkatkan instans yang ada, pastikan bahwa instans tersebut memenuhi prasyarat berikut. Anda dapat melihat detail instans pada halaman Basic Information.
Versi database: MySQL 5.7 (versi minor 20240930 atau lebih baru) atau 8.0 (versi minor 20250531 atau lebih baru).
Seri produk: Edisi Dasar.
Metode penagihan: langganan dan bayar sesuai penggunaan
CatatanUntuk menggunakan instans replikasi asli Serverless, Anda harus terlebih dahulu membuat instans bayar sesuai penggunaan, mengaktifkan replikasi asli, dan kemudian mengubah metode penagihan menjadi Serverless.
Wilayah yang didukung: Tiongkok (Shanghai), Tiongkok (Beijing), Tiongkok (Shenzhen), Tiongkok (Guangzhou), dan Tiongkok (Chengdu).
PentingApsaraDB RDS replikasi asli saat ini hanya tersedia di wilayah-wilayah yang tercantum di atas. Dukungan untuk wilayah lainnya sedang diperkenalkan. Jika Anda memerlukan fitur ini di wilayah lain, silakan ajukan tiket.
Penagihan
Anda akan dikenakan biaya instans saat membuat instans baru dengan replikasi asli yang diaktifkan. Meningkatkan instans yang ada ke instans replikasi asli tidak memerlukan biaya tambahan.
Jika Anda mengimpor data lengkap dengan mengunggah cadangan dari database yang dikelola sendiri ke Object Storage Service (OSS), biaya penyimpanan OSS akan dikenakan untuk menyimpan file cadangan di OSS.
Replikasi Asli Izin
Akun istimewa untuk instans replikasi asli ApsaraDB RDS for MySQL memiliki izin operasional tambahan yang tidak tersedia untuk instans standar ApsaraDB RDS for MySQL.
Izin perintah replikasi asli
Instans replikasi asli mengizinkan akun istimewa untuk mengeksekusi perintah replikasi asli MySQL berikut:
Konfigurasikan sinkronisasi replikasi antara master dan slave:
CHANGE MASTER TO. Untuk informasi lebih lanjut, lihat CHANGE MASTER TO.Mulai proses replikasi:
START SLAVE;. Untuk informasi lebih lanjut, lihat START SLAVE.Hentikan proses replikasi:
STOP SLAVE;. Untuk informasi lebih lanjut, lihat STOP SLAVE.Reset status slave:
RESET SLAVE;untuk memulai kembali proses replikasi dengan master. Untuk informasi lebih lanjut, lihat RESET SLAVE.
Izin modifikasi parameter
Instans replikasi asli mengizinkan akun istimewa untuk mengeksekusi tiga pernyataan SQL berikut untuk memodifikasi parameter waktu proses:
Tetapkan mode read-only untuk server database.
SET GLOBAL read_only = ON/OFF;Ketika disetel ke ON, server masuk ke mode read-only. Ketika disetel ke OFF, mode read-only dinonaktifkan, dan operasi baca/tulis diizinkan.
Tetapkan apakah pernyataan SQL yang dieksekusi dalam sesi saat ini dicatat dalam log biner.
SET SESSION sql_log_bin = ON/OFF;Ketika disetel ke ON, operasi SQL dalam sesi dicatat dalam log biner. Ketika disetel ke OFF, pernyataan SQL yang dieksekusi dalam sesi tidak dicatat dalam log biner.
Tetapkan nilai berikutnya untuk pengenal transaksi global (GTID).
SET SESSION GTID_NEXT = "your_gtid_value";
Selama operasi pemeliharaan seperti migrasi lintas mesin atau peningkatan, izin perintah replikasi asli dan izin modifikasi parameter sementara dicabut. Ini tidak memengaruhi proses replikasi instans. Izin dipulihkan setelah tugas pemeliharaan selesai.
Catatan
Instans replikasi asli ApsaraDB RDS for MySQL memiliki batasan berikut:
Batasan
Instans menjadi read-only.
Peningkatan versi utama tidak didukung.
Peningkatan seri produk tidak didukung (seperti dari Edisi Dasar ke Edisi Ketersediaan Tinggi atau Edisi Kluster).
Pengalihan VPC tidak didukung.
Pemulihan database dan tabel tidak didukung.
Saat Anda meningkatkan instans yang ada menjadi instans replikasi asli, koneksi sementara selama sekitar 30 detik mungkin terjadi. Kami sarankan Anda melakukan operasi ini di luar jam sibuk dan memastikan bahwa aplikasi Anda memiliki mekanisme penyambungan ulang.
Batasan izin
Batasan Akun Istimewa
Sebagian izin SUPER untuk fitur replikasi asli diberikan kepada akun istimewa dari instans ApsaraDB RDS for MySQL. Hanya akun istimewa yang dapat menjalankan perintah asli seperti
CHANGE MASTERdanSTART SLAVE.Batasan Izin Replikasi
Saat fitur replikasi asli menerapkan log biner eksternal, ia pertama-tama melakukan pemeriksaan izin. Setiap operasi yang melebihi izin berikut tidak akan diterapkan dan memutus replikasi.
GRANT SELECT, INSERT, UPDATE, DELETE, CREATE, DROP, RELOAD, PROCESS, REFERENCES, INDEX, ALTER, SHOW DATABASES, CREATE TEMPORARY TABLES, LOCK TABLES, EXECUTE, REPLICATION SLAVE, REPLICATION CLIENT, CREATE VIEW, SHOW VIEW, CREATE ROUTINE, ALTER ROUTINE, CREATE USER, EVENT, TRIGGER ON *.* TO XXX;Batasan Database Sistem
Semua operasi pada database sistem diabaikan. Database sistem mencakup
mysql,sys,information_schema,performance_schema, dan__recyclebin__.CatatanOperasi yang secara tidak langsung memodifikasi database sistem, seperti CREATE USER dan GRANT, tidak diabaikan. Namun, pernyataan SQL harus mematuhi batasan izin replikasi. Operasi yang melebihi izin yang diberikan, seperti
GRANT super on *.* to xxx;, akan memutus replikasi.Batasan GTID
Dalam konfigurasi replikasi asli MySQL, mode GTID harus sama pada database master dan slave. GTID harus diaktifkan atau dinonaktifkan pada keduanya. Instans ApsaraDB RDS for MySQL tidak mendukung penonaktifan mode GTID. Oleh karena itu, untuk menetapkan hubungan replikasi dengan instans ApsaraDB RDS for MySQL sebagai slave, database master eksternal juga harus memiliki mode GTID diaktifkan.
Sebelum Anda menyiapkan hubungan replikasi, jalankan
SHOW VARIABLES LIKE 'gtid_mode';pada database master eksternal untuk memeriksa apakah GTID diaktifkan. Jika GTID tidak diaktifkan, jalankanSET GLOBAL gtid_mode=ON;untuk mengaktifkan mode GTID pada master eksternal.
Peningkatan ke instans replikasi asli
Aktifkan replikasi asli saat membuat instans baru
Saat Anda membuat instans ApsaraDB RDS for MySQL baru di halaman Standard Create, perluas More Configurations di bagian bawah halaman dan aktifkan sakelar Native Replication. Perhatikan bahwa opsi replikasi asli hanya muncul jika instans memenuhi prasyarat.

Tingkatkan instans yang ada menjadi instans replikasi asli
Saat Anda meningkatkan instans yang ada menjadi instans replikasi asli, koneksi sementara sekitar 30 detik mungkin terjadi. Kami menyarankan Anda melakukan operasi ini selama jam-jam sepi dan memastikan bahwa aplikasi Anda memiliki mekanisme penyambungan ulang.
Pergi ke daftar Instans RDS, pilih wilayah, dan klik ID dari instans target. Instans target harus memenuhi prasyarat.
Di panel navigasi di sebelah kiri, klik Native Replication. Kemudian, klik Enable Native Replication.
Bacalah dengan cermat isi jendela pop-up dan klik OK.
CatatanJika Anda belum memberikan izin kepada akun layanan resmi ApsaraDB RDS untuk mengakses OSS Anda serta untuk membuat dan menyambungkan elastic network interfaces (ENIs), Anda harus terlebih dahulu memilih kotak centang yang sesuai untuk memberikan izin tersebut.
Langkah 2: Menyiapkan replikasi data dari database yang dikelola sendiri ke ApsaraDB RDS for MySQL
Instal XtraBackup dan Lakukan Backup pada Database yang Dikelola Sendiri
Instal XtraBackup:
Instal pada CentOS
MySQL 5.7
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpmMySQL 8.0
wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
Instal pada Ubuntu
Instal XtraBackup
MySQL 5.7
wget https://downloads.percona.com/downloads/Percona-XtraBackup-2.4/Percona-XtraBackup-2.4.29/binary/redhat/8/x86_64/percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpm yum localinstall percona-xtrabackup-24-2.4.29-1.el8.x86_64.rpmMySQL 8.0
wget https://downloads.percona.com/downloads/Percona-XtraBackup-8.0/Percona-XtraBackup-8.0.35-31/binary/redhat/8/x86_64/percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm yum localinstall percona-xtrabackup-80-8.0.35-31.1.el8.x86_64.rpm
Instal qpress: Karena XtraBackup yang diinstal pada Ubuntu tidak mencakup qpress, Anda harus menginstalnya secara terpisah.
sudo apt-get install -y qpress
Lakukan backup:
Ketiga metode kompresi berikut didasarkan pada perintah
XtraBackupdan cocok untuk instans yang terutama menggunakan engine InnoDB. Jika database Anda berisi tabel MyISAM, gunakan perintahinnobackupex.Metode 1: Kompresi qpress default
xtrabackup --backup \ --host=127.0.0.1 \ --port=3306 \ --user=<user_of_self-managed_MySQL> \ --password=<password> \ --stream=xbstream \ --compress > ./<backup_file_name_such_as_backup_1206.xb>Metode 2: Kompresi QuickLZ
Metode ini memerlukan penggunaan versi XtraBackup 8.0.34-29 atau lebih lama. Untuk informasi lebih lanjut, lihat tutorial resmi Percona XtraBackup.
xtrabackup --backup \ --host=127.0.0.1 \ --port=3306 \ --user=<user_of_self-managed_MySQL> \ --password=<password> \ --stream=xbstream \ --compress > ./<backup_file_name_such_as_backup_1206_qp.xb>Metode 3: Kompresi eksternal ZSTD
xtrabackup --backup \ --host=127.0.0.1 \ --port=3306 \ --user=<user_of_self-managed_MySQL> \ --password=<password> \ --stream=xbstream \ | zstd -q - > ./<backup_file_name_such_as_backup_1206.xb.zstd>
Impor Data Penuh dan Atur Replikasi Data Secara Otomatis
CatatanSebelum mengimpor data, konfigurasikan pengaturan jaringan untuk memastikan konektivitas jaringan antara database MySQL yang dikelola sendiri dan instans ApsaraDB RDS for MySQL.
Metode 1: Impor file cadangan dari OSS
Unggah Cadangan Database yang Dikelola Sendiri ke OSS
Anda dapat menggunakan alat yang berbeda untuk mengunggah file cadangan, seperti ossutil atau kit pengembangan perangkat lunak (SDK) OSS. Topik ini menggunakan ossutil sebagai contoh.
PentingPastikan Bucket OSS target berada di wilayah yang sama dengan instans RDS MySQL. Jika tidak, RDS tidak dapat mengambil file cadangan OSS selama proses unggah.
Instal ossutil.
yum install -y unzip sudo -v ; curl https://gosspublic.alicdn.com/ossutil/install.sh | sudo bash ossutil configUnggah data cadangan ke OSS.
ossutil -e <OSS_Endpoint> -i <your_AccessKeyId> -k <your_AccessKeySecret> cp <backup_file_name> oss://<Bucket_name>/
Impor File Cadangan dari OSS ke RDS dan Atur Tautan Replikasi Secara Otomatis
Buka daftar Instans RDS, pilih wilayah, dan klik ID instans target.
Di panel navigasi di sebelah kiri, klik Native Replication.
Di halaman Replikasi Asli, klik Import Full Data, konfigurasikan parameter, dan klik OK.
Kategori Konfigurasi
Parameter
Deskripsi
Metode Unggah Cadangan (Wajib)
MySQL Version
Sistem secara otomatis menampilkan 5.7 atau 8.0. Tidak diperlukan konfigurasi.
Method
Pilih Download From OSS.
OSS Bucket
Pilih Bucket OSS tempat file cadangan database yang dikelola sendiri disimpan. Untuk informasi lebih lanjut tentang Bucket OSS, lihat Unggah file.
OSS File Name
Pilih file cadangan untuk database yang dibuat sendiri dari bucket OSS. Jika file cadangan disimpan di subdirektori bucket OSS, Anda harus memasukkan jalur lengkap secara manual untuk pencarian. Tiga format file cadangan berikut didukung:
File
xbstreamyang dihasilkan langsung oleh XtraBackup.File
_qp.xbyang dihasilkan menggunakan kompresi quicklz bawaan XtraBackup.File
xbstreamyang dikompresi dengan zstd (dengan akhiran.xb.zst).
Kami merekomendasikan untuk mengaktifkan pengaturan replikasi otomatis. Sistem akan secara otomatis mengatur tautan replikasi data berdasarkan konfigurasi berikut. Jika Anda tidak mengaktifkan pengaturan replikasi otomatis, Anda harus secara manual mengatur tautan replikasi setelah mengimpor data penuh.
Konfigurasi Tautan Replikasi Otomatis (Opsional)
Automatic Replication Setup
Aktifkan sakelar untuk secara otomatis mengatur hubungan replikasi dari database MySQL yang dikelola sendiri ke instans ApsaraDB RDS for MySQL.
Replication Source IP
Masukkan alamat IP dari database sumber yang dikelola sendiri.
Replication Source Port
Masukkan nomor port dari database sumber yang dikelola sendiri.
Replication Source Account
Masukkan akun dari database sumber yang dikelola sendiri. Akun sumber harus memiliki izin
REPLICATION CLIENTdanREPLICATION SLAVE.Replication Account Password
Masukkan kata sandi untuk akun dari database sumber yang dikelola sendiri.
Metode 2: Transfer cadangan database yang dikelola sendiri ke RDS
Instal Alat Backup-Helper pada Database yang Dikelola Sendiri dan Buat Proses Transfer Cadangan
# Instal alat backup-helper wget -O backup-helper https://mysql-backup-helper.oss-cn-beijing.aliyuncs.com/v1.0.0-alpha/backup-helper && chmod +x backup-helper # Buat proses transfer cadangan menggunakan alat tersebut (Pastikan MySQL sedang berjalan di lingkungan dan versi XtraBackup yang sesuai telah diinstal berdasarkan versi database yang dikelola sendiri) ./backup-helper --backup --mode=stream --host=<MySQL_IP> --port=<MySQL_port> --user=<MySQL_account> --password=<MySQL_password>Impor Data ke RDS
Masuk ke Konsol ApsaraDB RDS, pilih wilayah di bagian atas halaman, dan klik ID instans.
Di panel navigasi di sebelah kiri, klik Native Replication.
Di halaman Replikasi Asli, klik Import Full Data, konfigurasikan parameter, dan klik OK.
Kategori Konfigurasi
Parameter
Deskripsi
Metode Unggah Cadangan (Wajib)
MySQL Version
Sistem secara otomatis menampilkan 5.7 atau 8.0. Tidak diperlukan konfigurasi.
Method
Pilih Direct Stream Backup.
Backup Source IP
Masukkan alamat IP untuk transfer cadangan.
Backup Source Port
Masukkan port untuk transfer cadangan. Default adalah 9999.
Kami merekomendasikan untuk mengaktifkan pengaturan replikasi otomatis. Sistem akan secara otomatis mengatur tautan replikasi data berdasarkan konfigurasi berikut. Jika Anda tidak mengaktifkan pengaturan replikasi otomatis, Anda harus secara manual mengatur tautan replikasi setelah mengimpor data penuh.
Konfigurasi Tautan Replikasi Otomatis (Opsional)
Automatic Replication Setup
Aktifkan sakelar untuk secara otomatis mengatur hubungan replikasi dari database MySQL yang dikelola sendiri ke instans ApsaraDB RDS for MySQL.
Replication Source IP
Masukkan alamat IP dari database sumber yang dikelola sendiri.
Replication Source Port
Masukkan nomor port dari database sumber yang dikelola sendiri.
Replication Source Account
Masukkan akun dari database sumber yang dikelola sendiri. Akun sumber harus memiliki izin
REPLICATION CLIENTdanREPLICATION SLAVE.Replication Account Password
Masukkan kata sandi untuk akun dari database sumber yang dikelola sendiri.
Jika Anda tidak memilih Automatic Replication Setup saat mengimpor data penuh, atau jika tautan replikasi otomatis gagal dan tidak dapat dipulihkan, Anda dapat mengikuti langkah-langkah berikut untuk secara manual mengatur tautan replikasi data dari database MySQL yang dikelola sendiri ke instans ApsaraDB RDS for MySQL.
Lihat Status Replikasi
Kembali ke halaman Native Replication untuk instans RDS guna melihat informasi tautan replikasi data. Saat status replikasi adalah Running, tautan replikasi data telah dibuat.
Mematikan replikasi asli
Pergi ke daftar Instans RDS, pilih Wilayah, dan klik ID dari instans target. Instans target harus memenuhi prasyarat.
Di panel navigasi di sebelah kiri, klik Native Replication. Kemudian, klik Disable Native Replication Mode di halaman tersebut.
Klik OK.
PentingSetelah Anda mengklik OK, hubungan replikasi dari database MySQL yang dikelola sendiri ke instans replikasi asli ApsaraDB RDS for MySQL akan dihentikan. Instans replikasi asli ApsaraDB RDS for MySQL dikembalikan menjadi instans standar ApsaraDB RDS for MySQL. Instans beralih dari mode read-only menjadi mode baca/tulis, sehingga Anda dapat melakukan operasi penulisan.
Konten terkait dan operasi API
Untuk membuat instans replikasi asli ApsaraDB RDS for MySQL dengan memanggil operasi API CreateDBInstance, perhatikan hal berikut:
Konfigurasi dasar dari instans harus memenuhi prasyarat. Konfigurasikan parameter lain sesuai kebutuhan.
Atur ExternalReplication ke ON.
Buat tautan replikasi asli untuk instans yang ada dengan memanggil operasi API ImportUserBackupFile.
Lampiran: Konfigurasi jaringan
Untuk informasi lebih lanjut, lihat Koneksi dan Jaringan.
Skenario Bisnis | Skenario | Metode Konfigurasi | Biaya |
Akses antar instans dalam VPC yang sama | MySQL yang dikelola sendiri pada Instance ECS | Konektivitas jaringan diaktifkan secara default dalam VPC yang sama, sehingga tidak diperlukan konfigurasi tambahan. Anda hanya perlu mengonfigurasi grup keamanan untuk membuka port 3306 pada grup keamanan instance ECS ke alamat IP dari instance RDS. Setelah Anda terhubung ke instance replikasi asli ApsaraDB RDS for MySQL, jalankan perintah | Tidak ada |
Akses antar instans di VPC berbeda | Sinkronisasi data lintas VPC dan wilayah di Alibaba Cloud |
|
|
Akses antara pusat data lokal dan instance ApsaraDB RDS di cloud | Database yang dikelola sendiri di pusat data ke instance replikasi asli ApsaraDB RDS | Anda dapat menggunakan Gateway VPN atau jalur sewa untuk menghubungkan pusat data Anda ke VPC tempat instance replikasi asli ApsaraDB RDS berada. | Biaya bervariasi tergantung pada metode. Untuk informasi lebih lanjut, lihat dokumentasi resmi. |
Akses antar cloud berbeda | Database di cloud lain ke instance replikasi asli ApsaraDB RDS | Dalam lingkungan multi-cloud, Anda harus membangun koneksi jaringan lintas cloud. Untuk mereplikasi data dari database di cloud lain ke instance replikasi asli ApsaraDB RDS, Anda dapat menggunakan layanan jaringan seperti VPN atau jalur sewa untuk membangun koneksi. | Biaya bervariasi tergantung pada metode. Untuk informasi lebih lanjut, lihat dokumentasi resmi. |
Akses jaringan publik (tidak direkomendasikan) | / | Instance replikasi asli ApsaraDB RDS mendukung akses melalui jaringan publik. Namun, metode ini tidak direkomendasikan karena risiko keamanan. | Biaya bervariasi tergantung pada metode. Untuk informasi lebih lanjut, lihat dokumentasi resmi. |