Database MySQL sumber

Bagian ini berisi informasi tentang:

  • Perilaku bagaimana Datastream menangani data yang ditarik dari database MySQL sumber
  • Versi database MySQL yang didukung Datastream
  • Batasan umum untuk menggunakan database MySQL sebagai sumber
  • Ringkasan cara menyiapkan database MySQL sumber sehingga data dapat di-streaming dari database tersebut ke tujuan

Perilaku

Database MySQL sumber mengandalkan fitur log biner untuk mengekspos perubahan pada data.

  • Semua database atau database tertentu dari sumber MySQL tertentu, serta semua tabel dari database atau tabel tertentu, dapat dipilih.
  • Semua data historis direplikasi.
  • Semua perubahan bahasa manipulasi data (DML), seperti penyisipan, pembaruan, dan penghapusan dari database dan tabel yang ditentukan, direplikasi.
  • Hanya perubahan yang di-commit yang direplikasi.

Versi

Datastream mendukung versi database MySQL berikut:

  • MySQL 5.6
  • MySQL 5.7
  • MySQL 8.0

Datastream mendukung jenis database MySQL berikut:

Batasan umum

Batasan umum untuk menggunakan database MySQL sebagai sumber meliputi:

  • Streaming dibatasi hingga 10.000 tabel.
  • Tabel yang memiliki kunci utama yang ditentukan sebagai INVISIBLE tidak dapat diisi ulang.
  • Tabel yang memiliki lebih dari 500 juta baris tidak dapat diisi ulang kecuali jika kondisi berikut terpenuhi:
    1. Tabel memiliki indeks unik.
    2. Indeks tidak mencakup kolom dari jenis berikut: VARCHAR, NVARCHAR, CHAR.
    3. Tidak ada kolom indeks yang nullable.
    4. Indeks tidak menurun.
    5. Semua kolom indeks disertakan dalam aliran data.
  • Datastream secara berkala mengambil skema terbaru dari sumber saat peristiwa diproses. Jika skema berubah, Datastream mendeteksi perubahan skema dan memicu pengambilan skema. Namun, beberapa peristiwa mungkin salah diproses atau dihapus di antara pengambilan skema, yang dapat menyebabkan perbedaan data.
  • Tidak semua perubahan pada skema sumber dapat dideteksi secara otomatis, dalam hal ini kerusakan data dapat terjadi. Perubahan skema berikut dapat menyebabkan kerusakan data atau kegagalan untuk memproses downstream peristiwa:
    • Meletakkan kolom
    • Menambahkan kolom ke tengah tabel
    • Mengubah tipe data kolom
    • Menyusun ulang kolom
    • Melepaskan tabel (relevan jika tabel yang sama kemudian dibuat ulang dengan data baru ditambahkan)
    • Tabel pemotongan
  • Datastream tidak mendukung replikasi tampilan.
  • Datastream tidak mendukung kolom jenis data spasial. Nilai dalam kolom ini diganti dengan nilai NULL.
  • Datastream tidak mendukung nilai nol (0000-00-00 00:00:00) di kolom jenis data DATETIME, DATE, atau TIMESTAMP. Nilai nol diganti dengan nilai NULL.
  • Datastream tidak mendukung replikasi baris yang berisi nilai berikut di kolom JSON: DECIMAL, NEWDECIMAL, TIME, TIME2 DATETIME, DATETIME2, DATE, TIMESTAMP, atau TIMESTAMP2. Peristiwa yang berisi nilai tersebut akan dihapus.
  • Datastream tidak mendukung kompresi transaksi log biner.
  • Datastream tidak mendukung rantai sertifikat SSL dalam profil koneksi MySQL sumber. Hanya satu sertifikat berenkode PEM x509 yang didukung.
  • Datastream tidak mendukung penghapusan bertahap. Peristiwa tersebut tidak ditulis ke log biner, dan akibatnya, tidak disebarkan ke tujuan.
  • Datastream tidak mendukung failover untuk replika. Oleh karena itu, kami tidak merekomendasikan penggunaan Datastream untuk replikasi dari sumber Cloud SQL untuk MySQL Enterprise Plus. Instance edisi Cloud SQL Enterprise Plus tunduk pada pemeliharaan periode nonaktif hampir nol dan beralih ke replika selama pemeliharaan. Hal ini mengganggu kontinuitas binlog, sehingga streaming yang terpengaruh akan gagal secara permanen.