Untuk sinkronisasi data real-time dari satu tabel MySQL, Anda harus mengonfigurasi pengaturan jaringan dan daftar putih untuk sumber data sebelum menjalankan node sinkronisasi data. Topik ini menjelaskan cara menyiapkan lingkungan jaringan dan izin akun untuk sinkronisasi data.
Prasyarat
- Sumber data: Database MySQL sumber dan sumber data tujuan telah disediakan. Sumber data tujuan dapat berupa MaxCompute, Hologres, Elasticsearch, DataHub, atau Kafka.
- Diperlukan grup sumber daya eksklusif untuk Data Integration. Anda dapat membeli dan mengonfigurasinya sesuai kebutuhan. Untuk informasi selengkapnya, lihat Perencanaan dan konfigurasi sumber daya.
- Evaluasi dan rencanakan lingkungan jaringan: Sebelum melakukan integrasi data, Anda harus menetapkan konektivitas jaringan antara sumber data dan grup sumber daya eksklusif untuk Data Integration. Topik ini memandu Anda dalam mengonfigurasi pengaturan akses spesifik, seperti VSwitch dan daftar putih.
- Jika sumber data dan grup sumber daya eksklusif untuk Data Integration berada di wilayah yang sama dan virtual private cloud (VPC) yang sama, keduanya terhubung secara default.
- Jika sumber data dan grup sumber daya eksklusif untuk Data Integration berada di lingkungan jaringan yang berbeda, Anda harus menghubungkannya menggunakan gateway VPN atau metode lainnya.
Informasi latar belakang
- Misalnya, jika Anda menggunakan lingkungan VPC yang sama, Anda harus menambahkan blok CIDR dari VPC tempat grup sumber daya eksklusif untuk Data Integration berada ke daftar putih. Hal ini memastikan bahwa grup sumber daya dapat mengakses sumber data.

-
Anda harus membuat akun khusus untuk mengakses sumber data. Akun ini digunakan untuk melakukan operasi ekstraksi dan penulisan data selama integrasi.
-
Jika sumber data adalah MySQL, Anda harus mengaktifkan log biner. Log biner mencatat semua perubahan pada struktur tabel database (misalnya dari operasi CREATE dan ALTER) serta modifikasi data (misalnya dari operasi INSERT, UPDATE, dan DELETE). Log biner memungkinkan Anda melihat riwayat perubahan database, melakukan cadangan inkremental dan pemulihan, serta menyiapkan replikasi untuk database primary-secondary.
Log biner memiliki format berikut:- Statement: Replikasi berbasis pernyataan. Log biner mencatat setiap pernyataan SQL yang memodifikasi data.
- Row: Replikasi berbasis baris. Log biner tidak menyimpan konteks pernyataan SQL, melainkan hanya mencatat baris yang dimodifikasi.
- Mixed: Replikasi mode campuran. Mode ini merupakan kombinasi dari format Statement dan Row. Dalam kebanyakan kasus, pernyataan dicatat menggunakan format Statement. Jika suatu operasi tidak dapat direplikasi menggunakan format Statement, maka format Row yang digunakan. MySQL secara otomatis menentukan format mana yang akan digunakan untuk setiap pernyataan SQL.
Batasan
- Sinkronisasi real-time data MySQL di DataWorks didasarkan pada subscription real-time ke MySQL. Fitur ini hanya mendukung sumber data MySQL
5.xatau8.xyang dihosting di ApsaraDB RDS for MySQL. Jangan mengonfigurasi instans PolarDB-X sebagai sumber data MySQL. Untuk menyinkronkan data dari instans PolarDB-X, lihat Konfigurasikan sumber data PolarDB-X untuk mengonfigurasinya langsung sebagai sumber data PolarDB-X. - XA ROLLBACK tidak didukung. Untuk data transaksi yang berada dalam status XA PREPARE, sinkronisasi real-time akan menuliskan data tersebut ke tujuan. Jika XA ROLLBACK dieksekusi, operasi rollback tersebut tidak akan disinkronkan. Untuk menangani skenario XA ROLLBACK, Anda harus menghapus secara manual tabel yang terpengaruh dari node sinkronisasi real-time, menambahkannya kembali, lalu melakukan inisialisasi data penuh baru dan sinkronisasi data inkremental.
- Untuk menggunakan sumber data MySQL dari Akun Alibaba Cloud yang berbeda, Anda harus menjalankan node sinkronisasi data di grup sumber daya eksklusif untuk Data Integration. Grup sumber daya bersama untuk Data Integration tidak dapat mengakses data dalam sumber data ini.
Prosedur
- Konfigurasikan daftar putih.
Tambahkan blok CIDR dari VPC untuk grup sumber daya eksklusif untuk Data Integration ke daftar putih database MySQL Anda.
- Lihat dan catat informasi jaringan grup sumber daya eksklusif.
- Login ke Konsol DataWorks.
- Di panel navigasi sebelah kiri, klik Resource Groups.
- Di tab Exclusive Resource Group, klik View Information untuk grup sumber daya integrasi data target.
- Salin EIP dan Network segment ke daftar putih database Anda.
- Di tab Exclusive Resource Group, klik Network Settings untuk grup sumber daya integrasi data target.
- Di tab VPC Binding, lihat vSwitch CIDR Block dan tambahkan ke daftar putih database.
- Tambahkan alamat IP elastis (EIP) dan blok CIDR yang telah dicatat dari grup sumber daya eksklusif untuk Data Integration ke daftar putih kluster MySQL Anda.
- Lihat dan catat informasi jaringan grup sumber daya eksklusif.
- Buat akun dan berikan izin.
Buat akun login database untuk sinkronisasi data. Akun ini harus memiliki izin
SELECT, REPLICATION SLAVE, REPLICATION CLIENT.- Buat akun.
Untuk informasi selengkapnya, lihat Buat akun untuk ApsaraDB RDS for MySQL.
- Berikan izin.
Anda dapat menjalankan perintah berikut untuk memberikan izin yang diperlukan kepada akun tersebut. Atau, Anda juga dapat memberikan izin
SUPERkepada akun tersebut. Saat menjalankan perintah, ganti'sync_account'dengan akun yang telah Anda buat.
Sintaks-- Buat akun sinkronisasi dan atur password untuk mengizinkan login dari host apa pun. Tanda persen (%) menunjukkan host apa pun. CREATE USER 'sync_account'@'%' IDENTIFIED BY 'password'; -- Berikan izin SELECT, REPLICATION SLAVE, dan REPLICATION CLIENT kepada akun sinkronisasi. GRANT SELECT, REPLICATION SLAVE, REPLICATION CLIENT ON *.* TO 'sync_account'@'%';*.*memberikan izin tersebut pada semua tabel di semua database. Anda juga dapat memberikan izin pada tabel tertentu di database tertentu. Misalnya, untuk memberikan izin pada tabel user di database test, jalankan pernyataan berikut:GRANT SELECT, REPLICATION CLIENT ON test.user TO 'sync_account'@'%';.Catatan IzinREPLICATION SLAVEadalah izin global dan tidak dapat diberikan pada tabel tertentu di database tertentu.
- Buat akun.
- Aktifkan log biner MySQL.
Periksa apakah log biner telah diaktifkan dan kueri formatnya:
- Jalankan perintah berikut untuk memeriksa apakah log biner telah diaktifkan.
show variables like "log_bin";Jika perintah mengembalikan nilai ON, berarti log biner telah diaktifkan.
- Jika Anda menggunakan database secondary untuk menyinkronkan data, jalankan perintah berikut untuk memeriksa apakah log binernya telah diaktifkan.
show variables like "log_slave_updates";Jika perintah mengembalikan nilai ON, berarti log biner telah diaktifkan untuk database secondary.
Jalankan perintah berikut untuk memeriksa format log biner.show variables like "binlog_format";Nilai yang dikembalikan menunjukkan formatnya:- Jika dikembalikan nilai ROW, format log biner adalah ROW.
- Jika dikembalikan nilai STATEMENT, format log biner adalah STATEMENT.
- Jika dikembalikan nilai MIXED, format log biner adalah MIXED.
- Jalankan perintah berikut untuk memeriksa apakah log biner telah diaktifkan.
Langkah selanjutnya
Setelah Anda menyelesaikan konfigurasi, konektivitas jaringan telah terbentuk antara sumber data, sumber data tujuan, dan grup sumber daya tanpa adanya pembatasan akses. Anda kemudian dapat menambahkan sumber data sumber dan tujuan ke daftar sumber data di DataWorks, yang mempermudah asosiasi keduanya saat Anda membuat node sinkronisasi data. Untuk informasi selengkapnya tentang cara menambahkan sumber data, lihat Tambahkan sumber data.