全部产品
Search
文档中心

OpenSearch:Konfigurasi sumber data PolarDB untuk MySQL

更新时间:Jul 06, 2025

PolarDB untuk MySQL adalah layanan database online dari Alibaba Cloud yang stabil, andal, dan dapat diskalakan, serta menyediakan kemampuan siap pakai. Untuk informasi lebih lanjut, lihat Apa itu PolarDB untuk MySQL Edisi Perusahaan?

Sebelum membeli kluster PolarDB untuk MySQL, perhatikan hal-hal berikut:

  • OpenSearch hanya mendukung PolarDB untuk MySQL versi 5.6, 5.7, dan 8.0.

  • Gunakan akun Alibaba Cloud yang Anda gunakan untuk masuk ke konsol OpenSearch untuk membuat kluster PolarDB untuk MySQL. Jika tidak, OpenSearch tidak dapat mengakses kluster tersebut.

  • Kluster PolarDB untuk MySQL harus berada di wilayah yang sama dengan aplikasi OpenSearch tempat Anda ingin mengonfigurasi sumber data.

  • Secara default, fitur binary logging dinonaktifkan setelah kluster PolarDB untuk MySQL dibuat. Dalam hal ini, Anda mungkin gagal menambahkan database dalam kluster sebagai sumber data. Oleh karena itu, fitur binary logging harus diaktifkan. Untuk mengaktifkan fitur binary logging, atur parameter loose_polar_log_bin yang nilai defaultnya OFF menjadi ON_WITH_GTID dan parameter binlog_row_image menjadi FULL. Secara default, parameter binlog_row_image disetel ke FULL.

  • Kluster PolarDB untuk MySQL mendukung instans kloning.

  • Kluster PolarDB untuk MySQL mendukung pemisahan baca/tulis.

Fitur yang Didukung

  • Semua data dalam database atau tabel yang ditentukan dapat ditarik secara manual atau otomatis pada waktu yang ditentukan.

  • Anda dapat menggabungkan baris dari beberapa tabel dari satu atau lebih sumber data. Untuk menggabungkan baris, pastikan bahwa tabel sumber menggunakan skema yang sama dan konfigurasi plugin pemrosesan data sama di semua sumber data. Selain itu, nilai kunci utama tidak boleh duplikat. Data dengan nilai kunci utama yang duplikat dapat ditimpa. Fitur ini dapat digunakan dalam skenario berikut:

    • Data disinkronkan dari beberapa tabel sumber dalam sumber data ke tabel dalam aplikasi.

    • Beberapa sumber data dikonfigurasikan untuk tabel dalam aplikasi. Data disinkronkan dari satu atau lebih tabel sumber di setiap sumber data ke tabel tersebut.

  • Anda dapat menggunakan plugin untuk mengonversi nilai bidang sumber.

  • Anda dapat menentukan kondisi filter untuk menyaring data penuh atau inkremental.

  • Anda dapat menggunakan tanda bintang (*) untuk mencocokkan tabel yang namanya memiliki awalan yang sama.

Batasan

  • Parameter binlog_row_image harus disetel ke FULL untuk kluster PolarDB untuk MySQL. Untuk mengaktifkan fitur binary logging, atur parameter loose_polar_log_bin yang nilai defaultnya OFF menjadi ON_WITH_GTID dan parameter binlog_row_image menjadi FULL. Secara default, parameter binlog_row_image disetel ke FULL.

  • Hanya PolarDB untuk MySQL versi 5.6, 5.7, dan 8.0 yang didukung.

  • Gunakan akun Alibaba Cloud yang Anda gunakan untuk masuk ke konsol OpenSearch untuk membuat kluster PolarDB untuk MySQL.

  • Kluster PolarDB untuk MySQL harus berada di wilayah yang sama dengan aplikasi OpenSearch tempat Anda ingin mengonfigurasi sumber data.

  • Setelah mengonfigurasi sumber data PolarDB untuk MySQL untuk aplikasi standar, Anda tidak dapat menggunakan SDK OpenSearch atau memanggil operasi API untuk mendorong data inkremental ke aplikasi.

  • Jika Anda mengonfigurasi sumber data PolarDB untuk MySQL untuk aplikasi standar, kondisi filter tidak dapat ditentukan untuk menyaring data dari sumber data.

  • REPLACE INTO pernyataan tidak didukung.

  • Anda tidak dapat menggunakan pernyataan TRUNCATE atau DROP untuk menghapus data. Untuk menghapus data, gunakan pernyataan DELETE.

  • Kata sandi yang digunakan untuk mengakses sumber data PolarDB untuk MySQL tidak boleh mengandung tanda persen (%). Jika tidak, pengindeksan ulang akan gagal.

  • Anda tidak dapat menggabungkan nilai bidang tabel sumber yang menggunakan skema berbeda.

  • Kami merekomendasikan Anda untuk menyetel kedua parameter loose_max_statement_time dan connect_timeout ke 0. Anda dapat mengubah nilai-nilai tersebut berdasarkan kebutuhan bisnis Anda setelah pengindeksan ulang atau perubahan offline dilakukan dan data penuh disinkronkan.

Catatan Penggunaan

  • Jika sumber data ApsaraDB RDS untuk MySQL atau PolarDB dilampirkan ke instans PolarDB-X, Anda harus menentukan nama shard database yang sebenarnya digunakan pada instans PolarDB-X saat mengonfigurasi sumber data. Setelah pembagian database, sebuah database pada instans PolarDB-X memiliki satu database bayangan dan delapan shard database. Data ditulis secara acak ke shard database.

  • Anda dapat beralih antara titik akhir internal dan publik kluster PolarDB untuk MySQL. Tidak ada biaya lalu lintas yang dihasilkan ketika OpenSearch mengakses data kluster PolarDB untuk MySQL.

  • OpenSearch memungkinkan Anda menarik data penuh hanya dari database utama. Kami merekomendasikan Anda mengimpor data penuh dan membangun ulang indeks selama jam-jam sepi.

  • Jika tabel sumber dari kluster PolarDB untuk MySQL berisi bidang format DATETIME atau TIMESTAMP, nilai-nilai bidang ini dikonversi menjadi jumlah milidetik. Anda perlu menyetel jenis bidang tujuan di aplikasi Anda ke TIMESTAMP.

  • Setelah data penuh disinkronkan, dokumen yang tidak memenuhi kondisi filter disaring. Jika dokumen tertentu memiliki nilai kunci utama yang sama dengan yang ada di tabel tujuan aplikasi, dokumen-dokumen tersebut juga disaring.

  • Jika tidak ada data inkremental yang dihasilkan di sumber data selama 15 hari atau lebih, sinkronisasi data mungkin gagal. Dalam hal ini, Anda dapat melakukan perubahan offline secara manual. Untuk informasi lebih lanjut, lihat Lakukan perubahan offline.

  • Jika enkripsi SSL diaktifkan untuk PolarDB untuk MySQL, pastikan bahwa sertifikat SSL valid. Jika sertifikat SSL kedaluwarsa, kesalahan koneksi mungkin terjadi. Anda harus memperbarui periode validitas sertifikat SSL secara tepat waktu.

  • Saat Anda menggunakan OpenSearch untuk menyinkronkan data dari kluster PolarDB untuk MySQL, Anda harus menambahkan alamat IP dan blok CIDR server di wilayah tempat OpenSearch berada ke daftar putih alamat IP kluster PolarDB untuk MySQL. Tabel berikut menyediakan daftar putih alamat IP untuk wilayah yang berbeda.

    Wilayah

    Alamat IP

    Cina (Hangzhou)

    100.104.190.128/26,100.104.241.128/26

    Cina (Beijing)

    100.104.16.192/26,100.104.179.0/26

    Cina (Shanghai)

    100.104.37.0/26,100.104.46.0/26

    Cina (Shenzhen)

    100.104.87.192/26,1100.104.132.192/26

    Cina (Qingdao)

    100.104.240.128/26,1100.104.111.128/26

    Cina (Zhangjiakou)

    100.104.155.192/26,100.104.238.64/26

    Jerman (Frankfurt)

    100.104.127.0/26,100.104.35.192/26

    AS (Silicon Valley) dan AS (Virginia)

    100.104.193.128/26,100.104.119.128/26

    Singapura

    100.104.58.192/26,100.104.74.192/26

Otorisasi Akun

  • Untuk terhubung ke kluster PolarDB untuk MySQL, Anda harus memperoleh izin yang diperlukan untuk mengakses kluster. Berhati-hatilah saat Anda memasukkan akun dan kata sandi tertentu untuk pertama kali terhubung ke sumber data.

  • Pastikan akun Anda memiliki izin untuk menanyakan semua tabel dalam database sumber di Data Transmission Service (DTS). Selain itu, pastikan bahwa pernyataan SHOW CREATE TABLE *. * dapat dieksekusi sesuai harapan. Jika akun Anda tidak memiliki izin, sinkronisasi real-time mungkin gagal.

  • Pastikan bahwa akun dan izin tidak diubah kecuali diperlukan. Perubahan akun dapat menyebabkan sinkronisasi real-time gagal. Selain itu, jika perubahan dilakukan pada akun, versi baru aplikasi mungkin gagal dibuat. Jika akun dan kata sandi diubah, Anda harus menghapus sumber data yang ada dan menambahkan database tujuan sebagai sumber data baru.

Pemecahan Masalah

  • Setelah sumber data PolarDB untuk MySQL dikonfigurasi, pengindeksan ulang mungkin ditangguhkan. Dalam hal ini, buat tabel uji di database tempat tabel sumber berada. Kemudian, tulis satu atau dua entri data ke tabel uji atau perbarui satu atau dua entri data di tabel uji setiap menit. Ini memastikan bahwa log biner kontinu dihasilkan saat data diindeks ulang.

  • Jika aplikasi tingkat lanjut yang dikonfigurasi dengan sumber data database PolarDB untuk MySQL memiliki pembayaran yang terlambat, Anda dapat memicu pengindeksan ulang secara manual setelah Anda membayar pembayaran yang terlambat.

  • Kata sandi yang digunakan untuk mengakses kluster PolarDB untuk MySQL tidak boleh mengandung tanda persen (%). Jika tidak, pengindeksan ulang gagal dan pesan kesalahan "Illegal hex characters in escape (%) pattern" muncul.

  • Nilai kunci utama tabel dalam aplikasi harus unik. Jika data disinkronkan dari beberapa tabel dengan skema tabel yang sama, nilai kunci utama yang duplikat mungkin ada. Dalam hal ini, data mungkin ditimpa. Untuk mencegah masalah ini, Anda dapat menggunakan plugin StringCatenateExtractor untuk menggabungkan nilai dari beberapa bidang. Bidang sumber adalah pk dan $table. Ganti pk dengan bidang kunci utama tabel di kluster PolarDB untuk MySQL. $table adalah variabel sistem default, yang menunjukkan nama tabel. Hubungkan bidang sumber menggunakan tanda hubung (-) atau karakter kustom.

Sebagai contoh, tabel di kluster PolarDB untuk MySQL bernama my_table_0 dan nilai kunci utama adalah 123456. Dalam hal ini, nilai kunci utama baru yang diperoleh setelah penggabungan adalah 123456-my_table_0.

  • Bidang bertipe DATE atau DATETIME dalam tabel sumber disaring. Sebagai contoh, jika nama bidang sumber dalam tabel database adalah createtime, format waktu yang ditentukan dalam kondisi filter untuk menyaring data dari sumber data harus createtime>'2018-03-01 00:00:00'. Jika nilai bidang dalam format createtime>'2018-3-1 00:00:00', kesalahan dilaporkan.

Konfigurasi Sumber Data PolarDB untuk MySQL

Prosedur dan Catatan Penggunaan

1. Di panel Pilih Sumber Data, pilih PolarDB dan klik Hubungkan ke Database.

1

2. Konfigurasikan parameter sumber data PolarDB untuk MySQL, dan klik Hubungkan.

2

Parameter

Deskripsi

ID Kluster

ID kluster PolarDB untuk MySQL. Anda dapat memperoleh ID di konsol PolarDB. ID bersifat peka huruf besar/kecil. Contoh: pc-uf6c056ny9tiaj1l7.

Nama Database

Nama database yang akan dihubungkan di kluster PolarDB untuk MySQL. Nama tidak peka huruf besar/kecil.

Nama Pengguna

Akun database yang digunakan untuk memperoleh skema tabel dan data penuh dari database. Nama pengguna bersifat peka huruf besar/kecil.

Kata Sandi

Kata sandi akun database.

Kemudian, OpenSearch mencoba terhubung ke sumber data dan mengembalikan pesan kesalahan jika koneksi gagal.

Pesan Kesalahan

Solusi

Kluster PolarDB untuk MySQL tidak berada di wilayah yang sama dengan aplikasi OpenSearch.

Periksa apakah ID kluster benar dan pastikan bahwa kluster PolarDB untuk MySQL berada di wilayah yang sama dengan aplikasi OpenSearch. Jika kluster PolarDB untuk MySQL dan aplikasi OpenSearch berada di wilayah yang sama tetapi pesan kesalahan masih dikembalikan, ajukan tiket.

Koneksi ke sumber data PolarDB untuk MySQL gagal.

Periksa apakah ID kluster, nama database, nama pengguna, dan kata sandi dalam string koneksi yang digunakan untuk terhubung ke sumber data valid.

Tabel tidak ada di kluster PolarDB untuk MySQL saat ini.

Periksa apakah nama tabel valid dan apakah kluster PolarDB untuk MySQL berisi tabel tersebut.

Konfigurasi kluster PolarDB untuk MySQL tidak valid.

Pergi ke halaman konfigurasi parameter kluster ini di konsol PolarDB untuk memodifikasi konfigurasi. Lalu, coba lagi nanti.

3. Setelah sumber data terhubung, pilih tabel. Gambar berikut menunjukkan halaman yang ditampilkan setelah koneksi dibuat. Setelah Anda memilih tabel, klik OK.

3

  • Pilih atau masukkan nama tabel yang akan diakses. Nama bersifat peka huruf besar/kecil.

  • Anda dapat menggunakan tanda bintang (*) untuk mencocokkan beberapa tabel dengan skema tabel yang sama dalam database. Nama tabel-tabel ini memiliki awalan yang sama. Sebagai contoh, Anda dapat memasukkan table_* untuk mencocokkan tabel seperti table_a dan table_b.

4. Setelah koneksi berhasil, konfigurasikan pemetaan bidang. OpenSearch secara otomatis menyinkronkan bidang sumber dari tabel. Untuk informasi lebih lanjut tentang plugin pemrosesan data, lihat Plugin Pemrosesan Data.

4

5. Tentukan kondisi filter untuk menyaring data sumber. Anda tidak dapat menentukan kondisi filter untuk aplikasi standar. Setelah Anda menyelesaikan konfigurasi di langkah Sumber Data, klik Kirim. Skema aplikasi dikonfigurasi.

6