PolarDB untuk MySQL menawarkan performa tinggi, penyimpanan massal, serta keamanan dan keandalan yang unggul. Topik ini menjelaskan cara menggunakan Data Transmission Service (DTS) untuk memigrasikan data dari database OceanBase ke klaster PolarDB untuk MySQL.
Prasyarat
Database OceanBase sumber adalah versi Community Edition 4.X.
Klaster PolarDB untuk MySQL dengan kapasitas penyimpanan lebih besar daripada database OceanBase sumber telah dibuat. Untuk informasi lebih lanjut, lihat Pembelian Kustom dan Pembelian Klaster Berlangganan.
Catatan Penggunaan
Selama migrasi skema, DTS memigrasikan kunci asing dari database sumber ke database tujuan.
Selama migrasi data penuh dan inkremental, DTS sementara menonaktifkan pengecekan kendala dan operasi kaskade pada kunci asing di tingkat sesi. Jika Anda melakukan operasi pembaruan atau penghapusan kaskade di database sumber selama migrasi data, ketidaksesuaian data mungkin terjadi.
Kategori | Deskripsi |
Batasan pada database sumber |
|
Batasan lainnya |
|
Penagihan
Jenis Migrasi | Biaya Konfigurasi Tugas | Biaya Transfer Data |
Migrasi skema dan migrasi data penuh | Gratis. | Gratis dalam contoh ini. |
Migrasi data inkremental | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar Penagihan. |
Operasi SQL yang dapat dimigrasikan secara inkremental
Jenis Operasi | Pernyataan SQL |
DML | INSERT, UPDATE, dan DELETE |
DDL |
|
Izin yang diperlukan untuk akun database
Jenis Database | Migrasi Skema | Migrasi Data Penuh | Migrasi Data Inkremental | |
OceanBase | Pengguna | Izin SELECT. | ||
Penyewa | Penyewa reguler | Penyewa reguler | Penyewa reguler Penting Anda harus menginstal oblogproxy di server yang menampung database OceanBase sumber dan mengonfigurasi penyewa sistem. oblogproxy adalah layanan proxy untuk mengelola log inkremental. Untuk informasi lebih lanjut, lihat Instal dan deploy oblogproxy menggunakan paket instalasi. | |
PolarDB untuk MySQL | Hak baca dan tulis pada database tujuan. | |||
Untuk informasi lebih lanjut tentang cara membuat akun database dan memberikan izin kepada akun database, lihat topik-topik berikut:
OceanBase: Buat Penyewa, Buat Pengguna, dan Berikan Hak Istimewa.
PolarDB untuk MySQL: Buat dan Kelola Akun Database.
Prosedur
Klik Create Task. Di halaman wizard Buat Tugas, konfigurasikan database sumber dan tujuan.
Bagian
Parameter
Deskripsi
Tidak Ada
Task Name
Nama tugas DTS. DTS secara otomatis menghasilkan nama tugas. Kami sarankan Anda menentukan nama deskriptif yang memudahkan identifikasi tugas. Anda tidak perlu menentukan nama tugas yang unik.
Source Database
Select an existing DMS database instance. (Optional. If you have not registered a DMS database instance, ignore this option and configure database settings in the section below.)
Database yang ingin Anda gunakan. Anda dapat memilih apakah akan menggunakan database yang ada berdasarkan kebutuhan bisnis Anda.
Jika Anda memilih database yang ada, DTS secara otomatis mengisi parameter untuk database tersebut.
Jika Anda tidak memilih database yang ada, Anda harus mengonfigurasi informasi database berikut.
Database Type
Tipe database sumber. Pilih ApsaraDB OceanBase for MySQL.
Access Method
Metode akses database sumber. Pilih nilai berdasarkan lokasi penyebaran database sumber. Dalam contoh ini, Public IP Address dipilih.
CatatanJika database yang dikelola sendiri digunakan sebagai database sumber, Anda harus menyiapkan lingkungan yang diperlukan untuk database yang dikelola sendiri sebelum migrasi data. Untuk informasi lebih lanjut, lihat Ikhtisar Persiapan.
Instance Region
Wilayah tempat database OceanBase sumber berada.
Domain Name or IP
Titik akhir database OceanBase sumber.
Port Number
Nomor port layanan database OceanBase sumber. Nilai default: 2881.
IP Address in Log Proxy (Domain Name Not Supported)
Alamat IP oblogproxy untuk database OceanBase sumber.
Port in Log Proxy
Nomor port mendengarkan oblogproxy untuk database OceanBase sumber. Nilai default: 2983.
Database Account
Akun database OceanBase sumber. Untuk informasi lebih lanjut tentang izin yang diperlukan, lihat bagian Izin yang diperlukan untuk akun database dari topik ini.
Database Password
Kata sandi yang digunakan untuk mengakses database.
Destination Database
Select an existing DMS database instance. (Optional. If you have not registered a DMS database instance, ignore this option and configure database settings in the section below.)
Database yang ingin Anda gunakan. Anda dapat memilih apakah akan menggunakan database yang ada berdasarkan kebutuhan bisnis Anda.
Jika Anda memilih database yang ada, DTS secara otomatis mengisi parameter untuk database tersebut.
Jika Anda tidak memilih database yang ada, Anda harus mengonfigurasi informasi database berikut.
Database Type
Tipe database tujuan. Pilih PolarDB for MySQL.
Access Method
Metode akses database tujuan. Pilih Alibaba Cloud Instance.
Instance Region
Wilayah tempat klaster tujuan PolarDB untuk MySQL berada.
PolarDB Cluster ID
ID klaster tujuan PolarDB untuk MySQL.
Database Account
Akun database klaster tujuan PolarDB untuk MySQL. Untuk informasi lebih lanjut tentang izin yang diperlukan untuk akun tersebut, lihat bagian Izin yang diperlukan untuk akun database dari topik ini.
Database Password
Kata sandi yang digunakan untuk mengakses instance database.
Encryption
Menentukan apakah akan mengenkripsi koneksi ke database sumber. Anda dapat mengonfigurasi parameter ini berdasarkan kebutuhan bisnis Anda. Untuk informasi lebih lanjut tentang fitur enkripsi SSL, lihat Konfigurasikan Enkripsi SSL.
Klik Test Connectivity and Proceed.
Jika daftar putih alamat IP dikonfigurasikan untuk database yang dikelola sendiri, Anda harus menambahkan blok CIDR server DTS ke daftar putih alamat IP. Kemudian, klik Test Connectivity and Proceed.
Jika database sumber atau tujuan adalah instance database Alibaba Cloud, seperti instance ApsaraDB RDS untuk MySQL atau ApsaraDB untuk MongoDB, DTS secara otomatis menambahkan blok CIDR server DTS ke daftar putih alamat IP instance tersebut. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang di-hosting pada instance Elastic Compute Service (ECS), DTS 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-hosting pada beberapa instance ECS, Anda harus secara manual menambahkan blok CIDR server DTS ke aturan grup keamanan setiap instance ECS. Jika database sumber atau tujuan adalah database yang dikelola sendiri yang ditempatkan di pusat data atau disediakan oleh penyedia layanan cloud pihak ketiga, Anda harus secara manual menambahkan blok CIDR server DTS ke daftar putih alamat IP database untuk mengizinkan DTS mengakses database. Untuk informasi lebih lanjut, lihat bagian Blok CIDR Server DTS dari topik Menambahkan Blok CIDR Server DTS.
PeringatanJika blok CIDR publik server DTS secara otomatis atau manual ditambahkan ke daftar putih instance database atau ke aturan grup keamanan instance ECS, risiko keamanan mungkin muncul. Oleh karena itu, sebelum Anda menggunakan DTS untuk migrasi data, Anda harus memahami dan mengakui potensi risiko serta mengambil tindakan pencegahan, termasuk tetapi tidak terbatas pada langkah-langkah berikut: meningkatkan keamanan nama pengguna dan kata sandi, membatasi port yang diekspos, mengotentikasi panggilan API, secara berkala memeriksa daftar putih atau aturan grup keamanan dan melarang blok CIDR yang tidak sah, atau menghubungkan instance database ke DTS dengan menggunakan Express Connect, VPN Gateway, atau Smart Access Gateway.
Konfigurasikan objek yang akan dimigrasikan dan pengaturan lanjutan.
Parameter
Deskripsi
Migration Types
Untuk hanya melakukan migrasi data penuh, pilih Schema Migration dan Full Data Migration.
Untuk memastikan kontinuitas layanan selama migrasi data, pilih Schema Migration, Full Data Migration, dan Incremental Data Migration.
CatatanJika Anda tidak memilih Schema Migration, pastikan database dan tabel dibuat di database tujuan untuk menerima data dan fitur pemetaan nama objek diaktifkan di Selected Objects.
Jika Anda tidak memilih Incremental Data Migration, kami sarankan Anda tidak menulis data ke database sumber selama migrasi data. Ini memastikan konsistensi data antara database sumber dan tujuan.
Processing Mode of Conflicting Tables
Precheck and Report Errors: memeriksa apakah database tujuan berisi tabel yang menggunakan nama yang sama dengan tabel di database sumber. Jika database sumber dan tujuan tidak berisi tabel dengan nama yang identik, praperiksa diluluskan. Jika tidak, kesalahan akan dilaporkan selama praperiksa dan tugas migrasi data tidak dapat dimulai.
CatatanJika database sumber dan tujuan berisi tabel dengan nama yang identik dan tabel di database tujuan tidak dapat dihapus atau diganti namanya, Anda dapat menggunakan fitur pemetaan nama objek untuk mengganti nama tabel yang dimigrasi ke database tujuan. Untuk informasi lebih lanjut, lihat Pemetaan Nama Objek.
Ignore Errors and Proceed: melewati praperiksa untuk nama tabel yang identik di database sumber dan tujuan.
PeringatanJika Anda memilih Ignore Errors and Proceed, ketidaksesuaian data mungkin terjadi dan bisnis Anda mungkin terpapar risiko potensial berikut:
Jika database sumber dan tujuan memiliki skema yang sama, dan catatan data memiliki kunci utama yang sama dengan catatan data yang ada di database tujuan, skenario berikut mungkin terjadi:
Selama migrasi data penuh, DTS tidak memigrasikan catatan data ke database tujuan. Catatan data yang ada di database tujuan dipertahankan.
Selama migrasi data inkremental, DTS memigrasikan catatan data ke database tujuan. Catatan data yang ada di database tujuan ditimpa.
Jika database sumber dan tujuan memiliki skema yang berbeda, hanya kolom tertentu yang dimigrasikan atau tugas migrasi data gagal. Lanjutkan dengan hati-hati.
Capitalization of Object Names in Destination Instance
Huruf besar/kecil nama database, nama tabel, dan nama kolom di instance tujuan. Secara default, DTS default policy dipilih. Anda dapat memilih opsi lain untuk memastikan bahwa huruf besar/kecil nama objek konsisten dengan database sumber atau tujuan. Untuk informasi lebih lanjut, lihat Tentukan Huruf Besar/Kecil Nama Objek di Instance Tujuan.
Source Objects
Pilih satu atau lebih objek dari bagian Source Objects. Klik ikon
untuk menambahkan objek ke bagian Selected Objects. CatatanAnda dapat memilih kolom, tabel, atau database sebagai objek yang akan dimigrasi. Jika Anda memilih tabel atau kolom sebagai objek yang akan dimigrasi, DTS tidak memigrasikan objek lainnya, seperti view, trigger, atau prosedur tersimpan, ke database tujuan.
Selected Objects
Untuk mengganti nama objek yang ingin Anda migrasikan ke instance tujuan, klik kanan objek di bagian Selected Objects. Untuk informasi lebih lanjut, lihat Pemetaan Nama Objek Tunggal.
Untuk mengganti nama beberapa objek sekaligus, klik Batch Edit di pojok kanan atas bagian Selected Objects. Untuk informasi lebih lanjut, lihat Pemetaan Beberapa Nama Objek Sekaligus.
CatatanJika Anda menggunakan fitur pemetaan nama objek, data mungkin tidak konsisten atau objek lain yang bergantung pada objek ini mungkin gagal dimigrasikan. Misalnya, jika pemetaan kolom digunakan untuk migrasi tabel non-penuh atau jika skema tabel sumber dan tujuan tidak konsisten, data di kolom database sumber yang tidak termasuk dalam database tujuan hilang.
Untuk menentukan kondisi WHERE untuk menyaring data, klik kanan objek di bagian Selected Objects. Di kotak dialog yang muncul, tentukan kondisi tersebut. Untuk informasi lebih lanjut, lihat Tentukan Kondisi Filter.
Untuk memigrasikan operasi SQL yang dilakukan pada database atau tabel tertentu secara inkremental, klik kanan objek di bagian Selected Objects. Di kotak dialog yang muncul, pilih operasi SQL yang ingin Anda migrasikan secara inkremental. Untuk informasi lebih lanjut tentang pernyataan SQL yang dapat dimigrasikan secara inkremental, lihat bagian Operasi SQL yang Dapat Dimigrasikan secara Inkremental dari topik ini.
Klik Next: Advanced Settings untuk mengonfigurasi pengaturan lanjutan.
Parameter
Deskripsi
Dedicated Cluster for Task Scheduling
Secara default, DTS menjadwalkan tugas migrasi data ke klaster bersama jika Anda tidak menentukan klaster khusus. Jika Anda ingin meningkatkan stabilitas tugas migrasi data, beli klaster khusus. Untuk informasi lebih lanjut, lihat Apa itu Klaster Khusus DTS.
Set Alerts
Menentukan apakah akan mengonfigurasi peringatan untuk tugas migrasi data. Jika tugas gagal atau latensi migrasi melebihi ambang batas yang ditentukan, kontak peringatan menerima notifikasi. Nilai valid:
No: tidak mengonfigurasi peringatan.
Yes: mengonfigurasi peringatan. Dalam hal ini, Anda juga harus mengonfigurasi ambang batas peringatan dan pengaturan notifikasi peringatan. Untuk informasi lebih lanjut, lihat bagian Konfigurasikan Pemantauan dan Peringatan Saat Membuat Tugas DTS dari topik Konfigurasikan Pemantauan dan Peringatan.
Select the engine type of the destination database
Tipe mesin klaster tujuan PolarDB untuk MySQL. Nilai valid:
InnoDB: mesin penyimpanan default.
X-Engine: mesin penyimpanan database online transaction processing (OLTP).
Retry Time for Failed Connections
Rentang waktu coba ulang untuk koneksi gagal. Jika database sumber atau tujuan gagal terhubung setelah tugas migrasi data dimulai, DTS segera mencoba menghubungkan kembali dalam rentang waktu coba ulang. Nilai valid: 10 hingga 1.440. Unit: menit. Nilai default: 720. Kami sarankan Anda menetapkan parameter ini ke nilai lebih besar dari 30. Jika DTS berhasil terhubung kembali ke database sumber dan tujuan dalam rentang waktu coba ulang yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
CatatanJika Anda menentukan rentang waktu coba ulang yang berbeda untuk beberapa tugas migrasi data yang berbagi database sumber atau tujuan yang sama, nilai yang ditentukan terakhir akan berlaku.
Saat DTS mencoba menghubungkan kembali, Anda akan dikenakan biaya untuk instance DTS. Kami sarankan Anda menentukan rentang waktu coba ulang berdasarkan kebutuhan bisnis Anda. Anda juga dapat melepaskan instance DTS sesegera mungkin setelah instance database sumber dan tujuan dilepaskan.
Retry Time for Other Issues
Rentang waktu coba ulang untuk masalah lainnya. Misalnya, jika operasi DDL atau DML gagal dilakukan setelah tugas migrasi data dimulai, DTS segera mencoba kembali operasi dalam rentang waktu coba ulang. Nilai valid: 1 hingga 1440. Unit: menit. Nilai default: 10. Kami sarankan Anda menetapkan parameter ini ke nilai lebih besar dari 10. Jika operasi yang gagal berhasil dilakukan dalam rentang waktu coba ulang yang ditentukan, DTS melanjutkan tugas migrasi data. Jika tidak, tugas migrasi data gagal.
PentingNilai parameter Retry Time for Other Issues harus lebih kecil dibandingkan nilai parameter Retry Time for Failed Connections.
Enable Throttling for Full Data Migration
Menentukan apakah akan mengaktifkan pembatasan untuk migrasi data penuh. Selama migrasi data penuh, DTS menggunakan sumber daya baca dan tulis dari database sumber dan tujuan. Ini dapat meningkatkan beban server database. Anda dapat mengaktifkan pembatasan untuk migrasi data penuh berdasarkan kebutuhan bisnis Anda. Untuk mengonfigurasi pembatasan, Anda harus mengonfigurasi parameter Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Ini mengurangi beban server database tujuan.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika Anda memilih Full Data Migration untuk parameter Migration Types.
Enable Throttling for Incremental Data Migration
Menentukan apakah akan mengaktifkan pembatasan untuk migrasi data inkremental. Untuk mengonfigurasi pembatasan, Anda harus mengonfigurasi parameter RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Ini mengurangi beban server database tujuan.
CatatanAnda hanya dapat mengonfigurasi parameter ini jika Anda memilih Incremental Data Migration untuk parameter Migration Types.
Environment Tag
Tag lingkungan yang digunakan untuk mengidentifikasi instance DTS. Anda dapat memilih tag lingkungan berdasarkan kebutuhan bisnis Anda. Dalam contoh ini, tidak ada tag lingkungan yang dipilih.
Configure ETL
Menentukan apakah akan mengaktifkan fitur extract, transform, dan load (ETL). Untuk informasi lebih lanjut, lihat Apa itu ETL? Nilai valid:
Yes: mengonfigurasi fitur ETL. Anda dapat memasukkan pernyataan pemrosesan data di editor kode. Untuk informasi lebih lanjut, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data.
No
Simpan pengaturan tugas dan jalankan praperiksa.
Untuk melihat parameter yang harus ditentukan saat Anda memanggil operasi API terkait untuk mengonfigurasi tugas DTS, gerakkan penunjuk ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Jika Anda tidak perlu melihat atau sudah melihat parameter tersebut, klik Next: Save Task Settings and Precheck di bagian bawah halaman.
CatatanSebelum memulai tugas migrasi data, DTS melakukan praperiksa. Anda hanya dapat memulai tugas migrasi data setelah tugas tersebut lulus praperiksa.
Jika tugas gagal lulus praperiksa, klik View Details di sebelah setiap item yang gagal. Setelah menganalisis penyebab berdasarkan hasil pemeriksaan, atasi masalah tersebut. Kemudian, jalankan praperiksa lagi.
Jika peringatan dipicu untuk suatu item selama praperiksa:
Jika item peringatan tidak dapat diabaikan, klik View Details di sebelah item yang gagal dan atasi masalah tersebut. Kemudian, jalankan praperiksa lagi.
Jika item peringatan dapat diabaikan, klik Confirm Alert Details. Di kotak dialog Lihat Detail, klik Ignore. Di pesan yang muncul, klik OK. Kemudian, klik Precheck Again untuk menjalankan praperiksa lagi. Jika Anda mengabaikan item peringatan, ketidaksesuaian data mungkin terjadi, dan bisnis Anda mungkin terpapar risiko potensial.
Tunggu hingga Success Rate menjadi 100%. Kemudian, klik Next: Purchase Instance.
Di halaman Purchase Instance, konfigurasikan parameter Kelas Instance untuk instance migrasi data. Tabel berikut menjelaskan parameter tersebut.
Bagian
Parameter
Deskripsi
New Instance Class
Resource Group
Grup sumber daya tempat instance migrasi data dimiliki. Nilai default: default resource group. Untuk informasi lebih lanjut, lihat Apa itu Resource Management?
Instance Class
DTS menyediakan kelas instance yang bervariasi dalam kecepatan migrasi. Anda dapat memilih kelas instance berdasarkan skenario bisnis Anda. Untuk informasi lebih lanjut, lihat Kelas Instance dari Instance Migrasi Data.
Baca dan setujui Data Transmission Service (Pay-as-you-go) Service Terms dengan memilih kotak centang.
Klik Buy and Start. Di pesan yang muncul, klik OK.
Anda dapat melihat kemajuan tugas di halaman Data Migration.
CatatanJika tugas migrasi data tidak dapat digunakan untuk memigrasikan data inkremental, tugas tersebut secara otomatis berhenti. Completed ditampilkan di bagian Status .
Jika tugas migrasi data dapat digunakan untuk memigrasikan data inkremental, tugas tersebut tidak berhenti secara otomatis. Tugas migrasi data inkremental tidak pernah berhenti atau selesai. Running ditampilkan di bagian Status.
Tanya Jawab Umum
Bagaimana cara mengatur parameter terkait oblogproxy jika oblogproxy belum diinstal untuk database OceanBase sumber?
Gunakan nilai default dari IP Address in Log Proxy (Domain Name Not Supported) dan Port in Log Proxy. Selain itu, jangan pilih Incremental Data Migration untuk Migration Types saat Anda mengonfigurasi pengaturan lanjutan. Jika tidak, kesalahan akan dilaporkan.
Bagaimana cara mengatur parameter Wilayah Instance jika wilayah database OceanBase sumber tidak ditampilkan di daftar drop-down Instance Region?
Dari daftar drop-down Wilayah Instance, pilih wilayah yang paling dekat dengan wilayah database OceanBase sumber.
Bagaimana cara mengonfigurasi parameter Domain Name or IP jika database OceanBase sumber ditempatkan dalam klaster?
Atur parameter ini ke nilai yang Anda tentukan untuk OBServer Node saat Anda membuat klaster.
Bagaimana cara mengatur parameter Port Number untuk database OceanBase sumber?
Jika database OceanBase sumber ditempatkan dalam mode mandiri, gunakan nilai default.
Jika database OceanBase sumber ditempatkan dalam klaster, atur parameter ini ke nilai yang Anda tentukan untuk SQL Port saat Anda membuat klaster.
Bagaimana cara mengatur parameter Database Account untuk database OceanBase sumber?
Tentukan nilai dalam format <Username>@<Nama Penyewa> untuk Database Account. Misalnya, database OceanBase sumber dibuat oleh pengguna bernama
dtstestdi penyewa bernamadts. Dalam hal ini, atur Akun Database kedtstest@dts.