Layanan Transmisi Data (DTS) melakukan migrasi data dari database OceanBase yang dikelola sendiri dan kompatibel dengan MySQL atau instans ApsaraDB for OceanBase ke mesin LindormTable dari instans Lindorm. Topik ini menjelaskan langkah-langkah untuk melakukan migrasi database OceanBase yang dikelola sendiri dan dapat diakses melalui Internet.
Prasyarat
Sebelum memulai, pastikan Anda telah:
Memiliki database OceanBase yang dikelola sendiri yang menjalankan OceanBase Database Community Edition V4.x, atau instans ApsaraDB for OceanBase dengan binary logging diaktifkan. Untuk informasi lebih lanjut, lihat Operasi terkait layanan binlog.
Membuat instans Lindorm dengan mesin LindormTable, dengan kapasitas penyimpanan yang tersedia lebih besar daripada ukuran total data di database OceanBase sumber. Untuk informasi lebih lanjut, lihat Buat instans.
Mengaktifkan fitur kompatibilitas MySQL pada instans Lindorm tujuan. Untuk informasi lebih lanjut, lihat Aktifkan fitur kompatibilitas MySQL.
Membuat namespace dan tabel lebar di instans Lindorm tujuan. Tabel lebar tersebut harus dipartisi sebelumnya berdasarkan data penuh. Untuk informasi lebih lanjut, lihat Gunakan client MySQL untuk menghubungkan dan menggunakan LindormTable, Gunakan Lindorm-cli untuk menghubungkan dan menggunakan LindormTable, Gunakan Lindorm Shell untuk menghubungkan ke LindormTable, CREATE TABLE, dan Database tujuan: instans Lindorm.
Buat namespace, tabel, dan kolom di instans Lindorm dengan nama yang sama seperti objek yang sesuai di database OceanBase sumber.
Izin yang diperlukan
Berikan izin berikut kepada akun yang digunakan oleh DTS sebelum mengonfigurasi tugas migrasi.
| Database | Migrasi data penuh | Migrasi data inkremental |
|---|---|---|
| OceanBase yang dikelola sendiri – pengguna | SELECT | SELECT |
| OceanBase yang dikelola sendiri – penyewa | Penyewa reguler | Penyewa reguler |
| ApsaraDB for OceanBase | SELECT | SELECT |
| Instans Lindorm | Baca dan tulis pada namespace tujuan | Baca dan tulis pada namespace tujuan |
Untuk migrasi data inkremental dari database OceanBase yang dikelola sendiri, instal oblogproxy pada server sumber dan konfigurasikan penyewa sistem. oblogproxy adalah layanan proxy yang mengelola log inkremental. Untuk informasi lebih lanjut, lihat Instal dan deploy oblogproxy menggunakan paket instalasi.
Untuk petunjuk membuat akun dan memberikan izin, lihat:
OceanBase yang dikelola sendiri: Buat penyewa, Buat pengguna, dan Berikan hak istimewa.
ApsaraDB for OceanBase: Buat penyewa, Buat pengguna database, dan Hak istimewa pengguna.
Lindorm: Kelola pengguna.
Untuk database OceanBase, lihat Buat penyewa, Buat pengguna, dan Berikan izin.
Batasan
Tinjau batasan-batasan berikut sebelum mengonfigurasi tugas migrasi.
Database sumber
Untuk sumber ApsaraDB for OceanBase, tambahkan secara manual Blok CIDR server DTS ke daftar putih alamat IP instans tersebut. Untuk informasi lebih lanjut, lihat Buat grup daftar putih dan Tambahkan Blok CIDR server DTS.
Server sumber harus memiliki bandwidth outbound yang mencukupi. Bandwidth yang tidak mencukupi akan mengurangi kecepatan migrasi.
Tabel yang akan dimigrasikan harus memiliki kendala PRIMARY KEY atau UNIQUE, dengan semua bidang bersifat unik. Jika tidak, catatan duplikat mungkin muncul di tujuan.
Saat memilih tabel sebagai objek untuk dimigrasikan dengan pemetaan nama objek, satu tugas mendukung hingga 1.000 tabel. Melebihi batas ini menyebabkan error permintaan. Bagi pekerjaan menjadi beberapa tugas, atau migrasikan seluruh database dalam satu tugas.
Selama migrasi data penuh, jangan lakukan operasi DDL yang mengubah skema database atau tabel. Jika dilakukan, tugas migrasi akan gagal.
Jika Anda hanya menjalankan migrasi data penuh (tanpa migrasi inkremental), jangan menulis data ke sumber selama migrasi. Untuk memastikan konsistensi data, pilih kedua opsi Full Data Migration dan Incremental Data Migration.
Data GEOMETRY hanya dapat dimigrasikan menggunakan migrasi data penuh. Migrasi inkremental untuk data GEOMETRY tidak didukung.
Umum
Migrasi skema tidak didukung.
Tabel harus berisi setidaknya satu bidang non-primary key. Migrasi hanya bidang primary key tidak didukung.
DTS hanya menulis data ke mesin LindormTable dari instans Lindorm.
Migrasi data penuh menggunakan sumber daya baca dan tulis pada database sumber dan tujuan, yang dapat meningkatkan beban server. Jalankan migrasi data penuh selama jam sepi ketika beban CPU berada di bawah 30%.
Setelah migrasi data penuh selesai, ruang tabel tujuan lebih besar daripada sumber karena fragmentasi yang disebabkan oleh operasi INSERT konkuren.
DTS mengambil nilai kolom FLOAT dan DOUBLE menggunakan
ROUND(COLUMN,PRECISION). Presisi default adalah 38 digit untuk FLOAT dan 308 digit untuk DOUBLE. Pastikan pengaturan presisi ini memenuhi kebutuhan Anda.DTS mencoba melanjutkan tugas yang gagal hingga tujuh hari. Sebelum mengalihkan beban kerja ke tujuan, hentikan atau rilis tugas migrasi, atau cabut izin tulis akun DTS pada tujuan. Jika tidak, data sumber dapat menimpa data tujuan saat tugas dilanjutkan.
Selama migrasi data penuh dan inkremental, DTS secara sementara menonaktifkan pemeriksaan kendala kunci asing dan operasi kaskade pada tingkat sesi. Jika Anda melakukan operasi update atau delete kaskade pada sumber selama migrasi, ketidakkonsistenan data dapat terjadi.
Penagihan
| Jenis migrasi | Biaya konfigurasi tautan | Biaya transfer data |
|---|---|---|
| Migrasi data penuh | Gratis | Dikenakan biaya jika data keluar dari Alibaba Cloud melalui Internet. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. |
| Migrasi data inkremental | Dikenakan biaya. Untuk informasi lebih lanjut, lihat Ikhtisar penagihan. | — |
Operasi SQL yang didukung untuk migrasi inkremental
| Jenis operasi | Pernyataan SQL |
|---|---|
| DML | INSERT, UPDATE, DELETE |
| DDL | CREATE TABLE, DROP TABLE, ADD COLUMN |
Buat tugas migrasi
Masuk ke Konsol DTS.
Di panel navigasi kiri, klik Data Migration.
Di bilah navigasi atas, pilih wilayah tempat instans DTS Anda berada.
Klik Create Task.
(Opsional) Klik New Configuration Page di pojok kanan atas.
Lewati langkah ini jika tombol Back to Previous Version ditampilkan. Gunakan halaman konfigurasi baru jika tersedia, karena parameter tertentu mungkin berbeda antar versi.
Konfigurasikan database sumber dan tujuan.
Database sumber adalah database OceanBase yang dikelola sendiri
Database sumber
Parameter Deskripsi Task Name Nama untuk tugas DTS. DTS menghasilkan nama secara otomatis. Tentukan nama deskriptif untuk mengidentifikasi tugas. Nama tidak harus unik. Select Existing Connection Pilih instans terdaftar yang sudah ada untuk menggunakan kembali pengaturan koneksi, atau biarkan kosong untuk mengonfigurasi pengaturan koneksi secara manual. Anda dapat mendaftarkan database ke DTS di halaman Database Connections atau halaman konfigurasi baru. Untuk informasi lebih lanjut, lihat Kelola koneksi database. Jika Anda menggunakan konsol DMS, pilih database yang sudah ada dari daftar drop-down Select a DMS database instance, atau klik Add DMS Database Instance untuk mendaftarkan database. Untuk informasi lebih lanjut, lihat Daftarkan instans database Alibaba Cloud dan Daftarkan database yang dihosting di layanan cloud pihak ketiga atau database yang dikelola sendiri. Database Type Pilih ApsaraDB OceanBase for MySQL. Access Method Pilih metode akses berdasarkan lokasi penempatan database sumber. Contoh ini menggunakan Public IP Address. Untuk database yang dikelola sendiri, lengkapi penyiapan lingkungan sebelum migrasi. Untuk informasi lebih lanjut, lihat Ikhtisar persiapan. Instance Region Wilayah tempat database OceanBase sumber berada. Jika Public IP Address dipilih dan wilayah tidak tercantum, pilih wilayah terdekat secara geografis. Domain Name or IP Titik akhir database OceanBase sumber. Port Number Port layanan database OceanBase sumber. Default: 2881. IP Address in Log Proxy (Domain Name Not Supported) Alamat IP oblogproxy untuk database OceanBase sumber. Port in Log Proxy Port pendengar oblogproxy. Default: 2983. Database Account Akun database sumber. Untuk izin yang diperlukan, lihat Izin yang diperlukan. Database Password Kata sandi untuk akun database sumber. Database tujuan
Parameter Deskripsi Select Existing Connection Pilih instans terdaftar yang sudah ada untuk menggunakan kembali pengaturan koneksi, atau biarkan kosong untuk mengonfigurasi pengaturan koneksi secara manual. Anda dapat mendaftarkan database ke DTS di halaman Database Connections atau halaman konfigurasi baru. Untuk informasi lebih lanjut, lihat Kelola koneksi database. Jika Anda menggunakan konsol DMS, pilih database yang sudah ada dari daftar drop-down Select a DMS database instance, atau klik Add DMS Database Instance untuk mendaftarkan database. Untuk informasi lebih lanjut, lihat Daftarkan instans database Alibaba Cloud dan Daftarkan database yang dihosting di layanan cloud pihak ketiga atau database yang dikelola sendiri. Database Type Pilih Lindorm. Access Method Pilih Alibaba Cloud Instance. Instance Region Wilayah tempat instans Lindorm tujuan berada. Instance ID ID instans Lindorm tujuan. Database Account Akun database tujuan. Untuk izin yang diperlukan, lihat Izin yang diperlukan. Database Password Kata sandi untuk akun database tujuan. Klik Test Connectivity and Proceed. Tambahkan Blok CIDR server DTS ke daftar putih OceanBase sebelum mengklik Test Connectivity.
PentingMenambahkan blok CIDR publik ke daftar putih database membawa risiko keamanan. Sebelum menggunakan DTS untuk migrasi data, ambil tindakan pencegahan termasuk memperkuat kredensial akun, membatasi port yang terbuka, mengotentikasi panggilan API, dan melakukan audit rutin terhadap daftar putih. Untuk informasi lebih lanjut, lihat Tambahkan Blok CIDR server DTS.
Konfigurasikan objek yang akan dimigrasikan. Di halaman Configure Objects, atur parameter berikut:
Parameter Deskripsi Migration Types Pilih Full Data Migration untuk migrasi satu kali. Pilih kedua opsi Full Data Migration dan Incremental Data Migration agar tujuan tetap sinkron selama migrasi. Jika Anda hanya memilih migrasi data penuh, jangan menulis ke sumber selama migrasi. Processing Mode of Conflicting Tables Precheck and Report Errors: DTS memeriksa adanya tabel dengan nama identik di sumber dan tujuan. Jika ditemukan kecocokan, pemeriksaan awal gagal dan tugas tidak dapat dimulai. Gunakan pemetaan nama objek untuk mengganti nama tabel yang bentrok di tujuan. Ignore Errors and Proceed: DTS melewati pemeriksaan ini. Selama migrasi data penuh, catatan tujuan yang sudah ada dipertahankan. Selama migrasi data inkremental, catatan tujuan yang sudah ada ditimpa. Jika skema berbeda, hanya kolom tertentu yang dimigrasikan atau tugas gagal. Gunakan dengan hati-hati. Capitalization of Object Names in Destination Instance Kebijakan kapitalisasi untuk nama database, tabel, dan kolom di tujuan. Default: Kebijakan default DTS. Untuk informasi lebih lanjut, lihat Tentukan kapitalisasi nama objek di instans tujuan. Source Objects Pilih objek dari Source Objects dan klik ikon panah untuk memindahkannya ke Selected Objects. Anda dapat memilih kolom, tabel, atau database. Memilih tabel atau kolom akan mengecualikan objek lain seperti view, trigger, dan prosedur tersimpan. Selected Objects Klik kanan objek untuk mengganti namanya (pemetaan nama objek), menambahkan kondisi filter WHERE, atau memilih operasi SQL tertentu. Untuk menghapus objek, klik objek tersebut lalu klik ikon hapus untuk memindahkannya kembali ke Source Objects. Mengganti nama objek dapat menyebabkan migrasi objek dependen gagal. Klik Next: Advanced Settings dan konfigurasikan parameter berikut:
Parameter Deskripsi Dedicated Cluster for Task Scheduling Secara default, DTS menjadwalkan tugas ke kluster bersama. Beli kluster khusus untuk stabilitas yang lebih baik. Untuk informasi lebih lanjut, lihat Apa itu kluster khusus DTS. Retry Time for Failed Connections Periode selama DTS mencoba kembali koneksi yang gagal. Nilai valid: 10–1.440 menit. Default: 720. Tetapkan nilai lebih dari 30. Jika koneksi berhasil dalam periode ini, tugas akan dilanjutkan secara otomatis. Saat beberapa tugas berbagi sumber atau tujuan yang sama, nilai yang paling baru ditentukan akan berlaku. DTS menagih biaya instans selama periode percobaan ulang. Retry Time for Other Issues Periode selama DTS mencoba kembali operasi DDL atau DML yang gagal. Nilai valid: 1–1.440 menit. Default: 10. Tetapkan nilai lebih dari 10 dan kurang dari Retry Time for Failed Connections. Enable Throttling for Full Data Migration Batasi laju migrasi data penuh untuk mengurangi beban pada database sumber dan tujuan. Konfigurasikan Queries per second (QPS) to the source database, RPS of Full Data Migration, dan Data migration speed for full migration (MB/s). Tersedia hanya jika Full Data Migration dipilih. Enable Throttling for Incremental Data Migration Batasi laju migrasi data inkremental untuk mengurangi beban pada database tujuan. Konfigurasikan RPS of Incremental Data Migration dan Data migration speed for incremental migration (MB/s). Tersedia hanya jika Incremental Data Migration dipilih. Environment Tag (Opsional) Tag untuk mengidentifikasi instans DTS. Configure ETL Pilih Yes untuk mengaktifkan ekstrak, transformasi, dan muat (ETL) serta masukkan pernyataan pemrosesan data. Pilih No untuk melewati. Untuk informasi lebih lanjut, lihat Konfigurasikan ETL dalam tugas migrasi data atau sinkronisasi data. Monitoring and Alerting Pilih Yes untuk menerima notifikasi saat tugas gagal atau latensi migrasi melebihi ambang batas yang dikonfigurasi. Konfigurasikan ambang batas peringatan dan pengaturan notifikasi. Untuk informasi lebih lanjut, lihat Konfigurasikan pemantauan dan peringatan. Simpan pengaturan tugas dan jalankan pemeriksaan awal.
Untuk melihat pratinjau parameter API untuk mengonfigurasi tugas ini, arahkan kursor ke Next: Save Task Settings and Precheck dan klik Preview OpenAPI parameters.
Klik Next: Save Task Settings and Precheck.
Tugas menjalankan pemeriksaan awal sebelum dimulai. Tugas hanya dapat dimulai setelah pemeriksaan awal berhasil. Jika pemeriksaan awal gagal, klik View Details di samping setiap item yang gagal, perbaiki masalahnya, lalu jalankan kembali pemeriksaan awal. Untuk item peringatan yang dapat diabaikan, klik Confirm Alert Details, klik Ignore di kotak dialog, klik OK, lalu klik Precheck Again. Mengabaikan item peringatan dapat menyebabkan ketidakkonsistenan data.
Tunggu hingga Success Rate mencapai 100%, lalu klik Next: Purchase Instance.
Beli instans migrasi data.
Di halaman Purchase Instance, konfigurasikan parameter berikut:
Parameter Deskripsi Resource Group Kelompok sumber daya untuk instans migrasi data. Default: default resource group. Untuk informasi lebih lanjut, lihat Apa itu Manajemen Resource? Instance Class Kelas instans menentukan kecepatan migrasi. Pilih berdasarkan kebutuhan Anda. Untuk informasi lebih lanjut, lihat Kelas instans migrasi data. Baca dan centang kotak Data Transmission Service (Pay-as-you-go) Service Terms.
Klik Buy and Start, lalu klik OK.
Lihat progres tugas di halaman Data Migration.