PolarDB adalah database relasional terdistribusi generasi berikutnya yang cloud-native dan dikembangkan oleh Alibaba Cloud. Produk ini sepenuhnya kompatibel dengan MySQL serta menawarkan kemudahan penggunaan, performa tinggi, keandalan tinggi, dan ketersediaan tinggi. Anda dapat menggunakan DTS untuk menyinkronkan data dari ApsaraDB RDS for MySQL ke PolarDB for MySQL.
Prasyarat
Buat kluster PolarDB for MySQL. Untuk informasi selengkapnya, lihat Pembelian Kustom.
Catatan penggunaan
-
Selama inisialisasi data penuh, DTS mengonsumsi sumber daya baca dan tulis dari database sumber dan tujuan, sehingga meningkatkan beban keduanya. Jika database Anda memiliki performa buruk, spesifikasi rendah, atau lalu lintas bisnis tinggi (misalnya, database sumber memiliki banyak query SQL lambat atau tabel tanpa primary key, atau database tujuan mengalami deadlock), beban database dapat meningkat hingga menyebabkan gangguan layanan. Sebelum menyinkronkan data, evaluasi performa instans sumber dan tujuan. Kami menyarankan agar sinkronisasi data dilakukan pada jam sepi, misalnya ketika utilisasi CPU kedua instans berada di bawah 30%.
-
Selama sinkronisasi data, jangan gunakan alat seperti gh-ost atau pt-online-schema-change untuk melakukan perubahan DDL online pada objek sinkronisasi di database sumber. Jika dilakukan, tugas sinkronisasi akan gagal.
-
Selama sinkronisasi data penuh awal, operasi
INSERTkonkuren menyebabkan fragmentasi tabel di kluster tujuan. Setelah sinkronisasi data penuh awal selesai, ruang tabel kluster tujuan akan lebih besar daripada database sumber. -
Jika suatu tabel di database sumber tidak memiliki primary key atau unique constraint, dan catatannya tidak unik di semua field, data duplikat dapat muncul di database tujuan.
Penagihan
Jenis sinkronisasi | Harga |
Sinkronisasi skema dan sinkronisasi data penuh | Gratis. |
Sinkronisasi data inkremental | Berbayar. Untuk informasi selengkapnya, lihat Gambaran Umum Penagihan. |
Operasi SQL yang didukung
|
Jenis operasi |
Pernyataan SQL |
|
DML |
INSERT, UPDATE, DELETE, dan REPLACE |
|
DDL |
|
Topologi sinkronisasi yang didukung
-
Sinkronisasi satu arah satu-ke-satu
-
Sinkronisasi satu arah satu-ke-banyak
-
Sinkronisasi satu arah cascade
-
Sinkronisasi satu arah banyak-ke-satu
Setiap topologi memiliki catatan penggunaan spesifik. Topologi sinkronisasi.
Batasan
-
Ketidakcocokan dengan trigger
Jika Anda memilih seluruh database sebagai objek sinkronisasi dan di dalamnya terdapat pemicu yang memperbarui tabel di dalam database tersebut, inkonsistensi data dapat terjadi antara database sumber dan tujuan. Untuk solusinya, lihat Mengonfigurasi tugas sinkronisasi data atau migrasi untuk database sumber yang berisi pemicu.
-
Batasan pada operasi RENAME TABLE
Operasi
RENAME TABLEdapat menyebabkan ketidakkonsistenan data. Misalnya, jika Anda hanya menyinkronkan satu tabel dan tabel tersebut diganti namanya di instans sumber selama sinkronisasi, datanya tidak akan disinkronkan ke database tujuan. Untuk mencegah hal ini, pilih seluruh database yang berisi tabel tersebut sebagai objek sinkronisasi. Jika tabel tersebut diganti namanya ke database berbeda, database tersebut juga harus disinkronkan.
Prosedur
-
Beli tugas sinkronisasi data. Untuk informasi selengkapnya, lihat Proses pembelian.
CatatanSaat membeli tugas, atur Source Database ke MySQL, Destination Database ke PolarDB, dan Synchronization Topology ke One-way Synchronization.
-
Masuk ke DTS console.
CatatanJika Anda dialihkan secara otomatis ke Konsol Data Management (DMS), Anda dapat mengklik ikon
di pojok kanan bawah lalu klik
untuk kembali ke Konsol DTS klasik. -
Di panel navigasi kiri, klik Data Synchronization.
-
Di bagian atas halaman Synchronization Tasks, pilih wilayah tempat instans tujuan berada.
-
Temukan tugas sinkronisasi data yang telah Anda beli, lalu klik Configure Task.
-
Konfigurasikan instans sumber dan tujuan.
Kategori
Parameter
Deskripsi
N/A
Synchronization Task Name
DTS menghasilkan nama default. Tentukan nama deskriptif. Nama tidak harus unik.
Detail Instans Sumber
Instance Type
Pilih RDS Instance.
Instance Region
Wilayah instans sumber yang dipilih saat pembelian instans DTS. Nilai ini tidak dapat diubah.
Database Account
Masukkan akun database instans ApsaraDB RDS for MySQL sumber.
Catatan-
Akun harus memiliki izin REPLICATION CLIENT, REPLICATION SLAVE, SHOW VIEW, dan SELECT pada semua objek yang akan disinkronkan.
-
Untuk instans RDS for MySQL sumber yang menjalankan MySQL 5.5 atau MySQL 5.6, parameter Database Account dan Database Password tidak diperlukan.
Database Password
Masukkan password akun database.
Connection Method
Pilih Non-encrypted atau SSL-encrypted. Jika Anda memilih SSL-encrypted, aktifkan enkripsi SSL untuk instans ApsaraDB RDS for MySQL sumber terlebih dahulu. Set SSL encryption.
PentingSaat ini, Anda hanya dapat mengatur Encryption di wilayah Tiongkok daratan dan China (Hong Kong).
Detail Instans Tujuan
Instance Type
Atur ke PolarDB. Nilai ini tidak dapat diubah.
Instance Region
Wilayah instans tujuan yang dipilih saat pembelian instans DTS. Nilai ini tidak dapat diubah.
PolarDB Instance ID
Pilih ID kluster tujuan PolarDB for MySQL.
Database Account
Masukkan akun database untuk kluster PolarDB for MySQL.
CatatanAkun harus memiliki izin ALL pada objek yang akan disinkronkan.
Database Password
Masukkan password akun database.
-
-
Di pojok kanan bawah halaman, klik Set Whitelist and Next.
Jika database sumber atau tujuan adalah instans database Alibaba Cloud, seperti instans ApsaraDB RDS for MySQL atau ApsaraDB for MongoDB, DTS akan secara otomatis menambahkan blok CIDR server DTS ke daftar putih alamat IP instans tersebut. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang di-host di instance Elastic Compute Service (ECS), DTS akan secara otomatis menambahkan blok CIDR server DTS ke aturan grup keamanan instance ECS, dan Anda harus memastikan bahwa instance ECS dapat mengakses database. Jika database yang dikelola sendiri di-host di beberapa instance ECS, Anda harus menambahkan blok CIDR server DTS secara manual ke aturan grup keamanan setiap instance ECS. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang di-deploy di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus menambahkan blok CIDR server DTS secara manual ke daftar putih alamat IP database agar DTS dapat mengakses database. Untuk informasi selengkapnya, lihat Daftar Putih Alamat IP Server DTS.
PeringatanMenambahkan blok CIDR alamat IP publik server DTS, baik secara otomatis maupun manual, dapat menimbulkan risiko keamanan. Dengan menggunakan produk ini, Anda mengakui dan menerima risiko potensial tersebut. Anda harus menerapkan perlindungan keamanan dasar. Perlindungan tersebut mencakup tetapi tidak terbatas pada penguatan keamanan password, pembatasan port terbuka untuk blok CIDR, penggunaan autentikasi untuk komunikasi API internal, serta peninjauan dan pembatasan rutin terhadap blok CIDR yang tidak diperlukan. Alternatifnya, Anda dapat menghubungkan ke database melalui jaringan internal, seperti jalur sewa, VPN Gateway, atau Smart Access Gateway.
-
Konfigurasikan mode pemrosesan untuk tabel tujuan yang sudah ada dan pilih objek yang akan disinkronkan.
Parameter
Deskripsi
Mode pemrosesan untuk tabel tujuan yang sudah ada
-
Precheck and Report Errors: DTS memeriksa apakah terdapat tabel di database tujuan yang memiliki nama sama dengan tabel sumber. Jika tidak ditemukan konflik, pemeriksaan awal berhasil. Jika terdapat konflik nama, pemeriksaan awal gagal dan tugas dihentikan.
CatatanJika Anda tidak dapat menghapus atau mengganti nama tabel yang berkonflik di database tujuan, Anda dapat Mengatur nama objek di instans tujuan untuk menghindari konflik nama.
-
Ignore Errors and Proceed: Melewati pemeriksaan tabel dengan nama yang bentrok di database tujuan.
PeringatanMemilih Ignore Errors and Proceed dapat menyebabkan ketidakkonsistenan data dan risiko lainnya. Misalnya:
-
Jika skema tabel identik, catatan yang sudah ada di tabel tujuan yang memiliki primary key sama dengan catatan sumber tidak akan diubah selama sinkronisasi awal. Namun, catatan tersebut akan ditimpa oleh perubahan dari sumber selama sinkronisasi inkremental.
-
Jika skema tabel berbeda, sinkronisasi awal mungkin gagal mentransfer beberapa kolom atau bahkan gagal sepenuhnya.
-
Pilih objek sinkronisasi
Di kotak Source Objects, klik objek yang ingin Anda sinkronkan, lalu klik ikon
untuk memindahkannya ke kotak Selected Objects.Anda dapat memilih database dan tabel sebagai objek sinkronisasi.
Catatan-
Jika Anda memilih seluruh database, semua perubahan skema untuk objek dalam database tersebut akan disinkronkan ke database tujuan.
-
Secara default, nama objek tidak diubah. Untuk mengganti nama objek di kluster tujuan, gunakan fitur pemetaan nama objek. Untuk informasi selengkapnya, lihat Atur nama objek di instans tujuan.
Map or rename objects
Ubah nama objek yang disinkronkan di Instans tujuan. Untuk informasi selengkapnya, lihat Memetakan database, tabel, dan kolom.
Replicate temporary tables from DMS online DDL operations
Jika Anda menggunakan Data Management (DMS) untuk melakukan perubahan DDL online pada database sumber, Anda dapat memilih apakah akan menyinkronkan tabel sementara yang dihasilkan oleh perubahan DDL.
-
Yes: Menyinkronkan tabel sementara yang dihasilkan oleh perubahan DDL online.
CatatanJika jumlah data tabel sementara yang dihasilkan oleh perubahan DDL online sangat besar, tugas sinkronisasi data mungkin tertunda.
-
No: Tidak menyinkronkan tabel sementara yang dihasilkan oleh perubahan DDL online. Hanya operasi DDL asli dari database sumber yang disinkronkan.
CatatanOpsi ini menyebabkan tabel di database tujuan terkunci.
Periode retry koneksi
Jika DTS tidak dapat terhubung ke instans sumber atau tujuan, DTS akan mencoba kembali selama 720 menit (12 jam) secara default. Anda juga dapat menentukan durasi retry kustom. Jika DTS berhasil terhubung kembali ke instans sumber atau tujuan dalam durasi yang ditentukan, tugas sinkronisasi akan dilanjutkan secara otomatis. Jika tidak, tugas akan gagal.
CatatanAnda dikenai biaya selama periode retry koneksi. Sesuaikan durasi retry berdasarkan kebutuhan bisnis Anda, atau rilis instans DTS segera setelah instans sumber dan tujuan dirilis.
-
-
Setelah menyelesaikan konfigurasi di atas, klik Next di pojok kanan bawah halaman.
-
Konfigurasikan pengaturan lanjutan untuk sinkronisasi awal.
CatatanJenis sinkronisasi awal mencakup sinkronisasi skema awal dan sinkronisasi data penuh awal. Jika Anda memilih kedua opsi Initial Schema Synchronization dan Initial Full Data Synchronization, DTS akan menyinkronkan skema dan data yang sudah ada dari objek yang dipilih dari database sumber ke database tujuan sebelum memulai sinkronisasi data inkremental.
-
Setelah menyelesaikan konfigurasi di atas, klik Precheck and Start di pojok kanan bawah halaman.
Catatan-
DTS melakukan pemeriksaan awal sebelum tugas sinkronisasi dimulai. Tugas hanya dapat dimulai setelah lulus pemeriksaan ini.
-
Jika pemeriksaan awal gagal, klik ikon
di samping item yang gagal untuk melihat detailnya.-
Perbaiki masalah berdasarkan penyebabnya, lalu jalankan kembali pemeriksaan awal.
-
Jika Anda tidak perlu memperbaiki item peringatan, Anda dapat mengklik Ignore atau Ignore and Re-precheck untuk melewati item peringatan tersebut dan menjalankan kembali pemeriksaan awal.
-
-
-
Setelah kotak dialog Precheck menampilkan Precheck Passed, tutup kotak dialog Precheck. Tugas sinkronisasi akan dimulai secara otomatis.
-
Tunggu hingga tugas selesai melakukan inisialisasi dan memasuki status Synchronizing.
Anda dapat melihat status tugas sinkronisasi data di halaman Data Synchronization.