Mengonfigurasi database MySQL yang dikelola sendiri untuk CDC

Datastream memungkinkan Anda menstreaming update change data capture (CDC) dari database MySQL yang dikelola sendiri ke tujuan yang didukung, seperti BigQuery atau Cloud Storage. Untuk menyiapkan sumber, Anda mengonfigurasi logging biner berbasis baris penuh dengan periode retensi 7 hari dan membuat pengguna Datastream dengan hak istimewa replikasi. Anda juga dapat menggunakan konfigurasi ini untuk database yang kompatibel seperti MariaDB, Percona Server untuk MySQL, dan Alibaba Cloud PolarDB.

Memverifikasi konfigurasi dan periode retensi log biner

  1. Pastikan log biner dikonfigurasi dengan benar dengan memasukkan perintah MySQL berikut:

    SHOW GLOBAL VARIABLES LIKE '%binlog_format%';
    
  2. Pastikan nilai untuk variabel binlog_format ditetapkan ke ROW. Datastream tidak mendukung format log biner MIXED atau STATEMENT.

  3. Pastikan format baris untuk log biner ditetapkan ke FULL dengan memasukkan perintah MySQL berikut:

    SHOW GLOBAL VARIABLES LIKE 'binlog_row_image';
    
  4. Untuk MySQL versi 8.0 dan yang lebih baru, pastikan variabel binlog_row_value_options ditetapkan ke nilai kosong dengan memasukkan perintah MySQL berikut:

    SHOW GLOBAL VARIABLES LIKE 'binlog_row_value_options';
    
  5. Pastikan opsi update replika untuk log biner ditetapkan ke ON dengan memasukkan perintah MySQL berikut:

    SHOW GLOBAL VARIABLES LIKE 'log_replica_updates';
    

    Untuk MySQL versi yang lebih lama dari 8.0.26, masukkan perintah berikut:

    SHOW GLOBAL VARIABLES LIKE 'log_slave_updates';
    
  6. Pastikan masa retensi log biner ditetapkan ke 604800 detik (7 hari) dengan memasukkan perintah MySQL berikut:

    SHOW GLOBAL VARIABLES LIKE 'binlog_expire_logs_seconds';
    

    Untuk MySQL versi yang lebih lama dari 8.0.3, masukkan perintah berikut:

    SHOW GLOBAL VARIABLES LIKE 'expire_logs_days';
    

Membuat pengguna Datastream

  1. Untuk membuat pengguna Datastream, masukkan perintah MySQL berikut:

    CREATE USER 'datastream'@'%' IDENTIFIED BY 'YOUR_PASSWORD';
    GRANT REPLICATION SLAVE, SELECT, REPLICATION CLIENT ON *.* TO 'datastream'@'%';
    FLUSH PRIVILEGES;

Langkah berikutnya

  • Pelajari lebih lanjut cara kerja Datastream dengan sumber MySQL.