Anda mungkin perlu mengubah set karakter tabel berdasarkan kebutuhan bisnis. Sebagai contoh, Anda mungkin ingin mengubah set karakter dari GBK menjadi UTF8mb4. Namun, pernyataan ALTER yang digunakan untuk mengubah set karakter pada tabel besar dapat mengunci tabel dan berdampak negatif pada operasi bisnis.
Topik ini menjelaskan cara mengubah set karakter tanpa mempengaruhi operasi bisnis. Anda dapat membuat skema tabel di instance tujuan berdasarkan set karakter baru, lalu menggunakan Data Transmission Service (DTS) untuk memigrasi data tabel ke instance tujuan. Untuk memastikan kontinuitas layanan, Anda dapat menyiapkan solusi rollback atau dual-write.
Catatan Penggunaan
Sebelum mengubah set karakter, pastikan sistem bisnis dan pernyataan SQL kompatibel dengan set karakter baru, serta fitur sistem bisnis tidak terpengaruh.
Selama migrasi data penuh, DTS menggunakan sumber daya baca/tulis dari instance sumber dan tujuan, yang dapat meningkatkan beban database. Sebelum memigrasi data, evaluasi kinerja instance sumber dan tujuan. Kami merekomendasikan migrasi data dilakukan selama jam non-puncak.
Instance sumber harus memiliki PRIMARY KEY atau batasan UNIQUE, dan semua bidang harus unik. Jika tidak, data duplikat mungkin muncul di instance tujuan.
Langkah 1: Impor skema tabel dari instance sumber ke instance tujuan
Dalam contoh ini, mode manajemen instance yang digunakan melalui Data Management (DMS) adalah Flexible Management.
Ekspor skrip skema tabel sumber dari instance sumber. Skema tabel sumber merujuk pada skema tabel yang ingin Anda ubah set karakternya.
Masuk ke instance sumber menggunakan DMS. Untuk informasi lebih lanjut, lihat Gunakan DMS untuk Masuk ke Instance ApsaraDB RDS.
Di bilah navigasi atas, klik Database Development. Di panel navigasi kiri, pilih .
CatatanUntuk melakukan operasi ini, arahkan mouse ke ikon
di sudut kanan atas, dan aktifkan Drop-down Menus in Top Navigation Bar.Di tab Ekspor Data, konfigurasikan parameter.
CatatanProses konfigurasi dan parameter untuk ekspor data mungkin berbeda berdasarkan mode manajemen instance. Untuk informasi lebih lanjut, lihat Ekspor Database.
Parameter
Deskripsi
Data Export Type in Application
Tipe ekspor data yang ingin Anda lakukan. Pilih Database Export.
Database Name
Nama database dari mana data diekspor. Pilih database yang ingin Anda ekspor.
CatatanAnda harus memiliki izin ekspor pada database ini. Untuk informasi lebih lanjut, lihat Lihat izin yang dimiliki.
Exported table
Tabel yang akan diekspor. Dalam contoh ini, Partial Tables dipilih. Anda dapat memilih Partial Tables atau All Tables berdasarkan kebutuhan bisnis Anda.
CatatanJika Anda menetapkan parameter ini ke Partial Tables, Anda harus memilih satu atau lebih tabel di bagian Tabel & Filter dan mengonfigurasi kondisi filter untuk setiap tabel.
Export content
Konten yang ingin Anda ekspor. Pilih Structure.
File Format
Format file yang akan diekspor. Dalam contoh ini, SQL dipilih secara default dan tidak dapat diubah.
Exported Structure Type
Tipe skema yang ingin Anda ekspor. Nilai valid:
Procedure
Function
Trigger
View
Event
CatatanNilai valid bervariasi berdasarkan tipe database yang ingin Anda ekspor.
More Options
Objek lain yang ingin Anda ekspor. Klik Big data type export options atau SQL script other options dan pilih opsi yang diperlukan.
Klik Submit, lalu tunggu hasil persetujuan.
Setelah tiket disetujui, klik Download Exported File di langkah Download.

Ekstrak file yang diekspor, dan ubah set karakter dalam skrip skema tabel.

Buat instance ApsaraDB RDS for MySQL dengan tipe yang sama seperti instance sumber. Instance baru adalah instance tujuan. Untuk informasi lebih lanjut tentang cara membuat instance ApsaraDB RDS for MySQL, lihat 快速Buat Instance ApsaraDB RDS for MySQL.
Impor skrip skema tabel yang telah diedit ke instance ApsaraDB RDS for MySQL baru.
Masuk ke instance tujuan ApsaraDB RDS for MySQL menggunakan DMS. Untuk informasi lebih lanjut, lihat Gunakan DMS untuk Masuk ke Instance ApsaraDB RDS.
Di bilah navigasi atas, klik Database Development. Di panel navigasi kiri, pilih .
Di tab Impor Data, konfigurasikan parameter.
CatatanProses konfigurasi dan parameter untuk impor data mungkin berbeda berdasarkan mode manajemen instance. Untuk informasi lebih lanjut, lihat Impor Data.
Parameter
Deskripsi
Data Change Type in Application
Tipe perubahan data yang ingin Anda lakukan. Pilih Large Data Import.
Database
Nama database ke mana file diimpor.
CatatanJika database tujuan dikelola dalam mode Flexible Management atau Stable Change, pastikan Anda telah masuk ke database. Jika tidak, database tidak akan ditampilkan.
File Encoding
Algoritma pengkodean yang akan digunakan oleh database tujuan. Nilai valid:
UTF-8
GBK
ISO-8859-1
Identifikasi Otomatis
Import mode
Mode impor. Nilai valid:
Speed Mode: Jika Anda menggunakan mode ini, pernyataan SQL dalam file yang diunggah dibaca dan langsung dieksekusi di langkah Eksekusi untuk mengimpor data ke database tujuan yang ditentukan. Mode kecepatan kurang aman tetapi lebih cepat daripada mode keamanan.
CatatanSecara default, speed mode dinonaktifkan untuk instance database yang dikelola dalam mode Kolaborasi Keamanan. Anda dapat mengaktifkan mode kecepatan dengan melakukan operasi berikut: Buka halaman dari set aturan keamanan yang diterapkan pada instance database dan klik tab SQL Correct. Di daftar di bawah titik pemeriksaan Basic Configuration Item, modifikasi apakah impor data mendukung pemilihan mode kecepatan.
Security mode: Jika Anda menggunakan mode ini, file yang diunggah diurai, dan pernyataan SQL atau data file CSV dalam file yang diunggah disimpan dalam langkah Pra-periksa. Di langkah Eksekusi, pernyataan SQL yang disimpan dibaca dan dieksekusi untuk mengimpor data, atau data file CSV yang disimpan dibaca dan diimpor ke database tujuan yang ditentukan. Mode keamanan lebih aman tetapi lebih lambat daripada mode kecepatan.
File type
Format file untuk impor data. Nilai valid:
Skrip SQL: Secara default, Anda hanya dapat menggunakan pernyataan INSERT dan REPLACE untuk mengimpor data ke instance database yang dikelola dalam mode Kolaborasi Keamanan. Jika Anda ingin menggunakan pernyataan SQL lain untuk mengimpor data, modifikasi aturan keamanan untuk impor data sebagai administrator basis data (DBA) atau administrator DMS. Anda dapat memodifikasi aturan keamanan dengan melakukan operasi berikut: Buka halaman Details dari set aturan keamanan yang diterapkan pada instance database dan klik tab SQL Correct. Di daftar di bawah titik pemeriksaan Batch Data import rules, modifikasi aturan keamanan sesuai kebutuhan.
CSV: Pembatas dalam file harus berupa koma (,).
Excel: File dapat berisi header tabel dan data, atau hanya berisi data.
Attachment
File untuk impor data. Klik Upload a file untuk mengunggah file.
CatatanTipe file yang didukung termasuk SQL, CSV, TXT, XLSX, dan ZIP.
File yang diunggah dapat berukuran hingga 5 GB.
Other Options
Menentukan apakah akan melewati kesalahan. Parameter ini opsional.
Secara default, kotak centang tidak dicentang. Jika terjadi kesalahan, DMS menghentikan eksekusi pernyataan SQL dan mengirim pesan kesalahan.
Jika Anda mencentang kotak centang, DMS melewati kesalahan dan melanjutkan eksekusi pernyataan SQL.
Klik Submit dan tunggu hingga pra-periksa selesai. Jika pra-periksa gagal, perbaiki masalah dan kirim tiket lagi.
CatatanJika file yang diunggah adalah skrip SQL, DMS memeriksa pra-periksa pernyataan SQL dalam file yang diunggah. Jika file yang diunggah adalah file CSV, DMS menghasilkan pernyataan
INSERTberdasarkan file yang diunggah.Di langkah Execute, klik Execute Change.

Di kotak dialog Task Settings, tentukan waktu untuk menjalankan tugas. Anda dapat menyetel parameter Strategi Eksekusi ke Running immediately. Jika Anda ingin menjalankan tugas nanti, setel parameter Strategi Eksekusi ke Schedule dan tentukan waktu tertentu untuk DMS menjalankan tugas. Lalu, klik Confirm Execution.

Anda dapat menggunakan salah satu metode berikut untuk menjalankan tugas:
Running immediately: Secara default, opsi ini dipilih. Jika Anda memilih opsi ini, tugas segera dijalankan setelah Anda klik Confirm Execution.
Schedule: Jika Anda memilih opsi ini, Anda harus menentukan waktu mulai untuk tugas. Setelah Anda klik Confirm Execution, tugas dijalankan pada waktu yang ditentukan.
CatatanSaat tugas dijalankan, DMS membaca pernyataan SQL dalam mode streaming dan mengeksekusi pernyataan SQL dalam batch. Setiap batch pernyataan SQL berukuran 1 MB.
Di langkah Execute, Anda dapat melihat status, detail pemeriksaan SQL, dan log penjadwalan tugas.
Jika Anda ingin memulai ulang tugas yang ditangguhkan, tugas dijalankan dari awal atau offset penangguhan berdasarkan mode impor.
Mode kecepatan: Jika tugas ditangguhkan dan dimulai ulang, skrip SQL dieksekusi atau file data diimpor dari awal.
Mode keamanan: Jika tugas ditangguhkan dan dimulai ulang, skrip SQL dieksekusi atau file data diimpor dari offset penangguhan.
Setelah skema tabel diimpor, Anda dapat mengeksekusi pernyataan
show create table <Nama Tabel>;untuk memverifikasi set karakter baru tabel.
Langkah 2: Migrasi data tabel dari instance sumber ke instance tujuan
Masuk ke Konsol DTS.
CatatanJika Anda diarahkan ke konsol DMS, Anda dapat mengarahkan mouse ke ikon
di sudut kanan bawah dan klik ikon
untuk pergi ke konsol DTS versi sebelumnya.Jika Anda diarahkan ke konsol DTS versi baru, Anda dapat klik ikon
di sudut kanan bawah untuk pergi ke konsol DTS versi sebelumnya.
Di panel navigasi kiri, klik Data Migration.
Di bagian atas halaman Migration Tasks, pilih wilayah tempat kluster tujuan berada.
Di sudut kanan atas halaman, klik Create Migration Task.
Konfigurasikan database sumber dan tujuan.

Bagian
Parameter
Deskripsi
Nama Tugas
-
Nama tugas yang DTS buat otomatis. Kami merekomendasikan Anda menentukan nama deskriptif yang mudah diidentifikasi. Anda tidak perlu menentukan nama tugas unik.
Database Sumber
Tipe Instance
Tipe database sumber. Pilih RDS Instance.
Wilayah Instance
Wilayah tempat instance sumber berada.
ID Instance RDS
ID instance ApsaraDB RDS for MySQL sumber.
Akun Database
Akun database instance ApsaraDB RDS for MySQL sumber. Akun tersebut harus memiliki izin baca/tulis pada database yang akan dimigrasi.
Kata Sandi Database
Kata sandi akun database instance ApsaraDB RDS for MySQL.
CatatanSetelah Anda menentukan informasi tentang database sumber, Anda dapat klik Test Connectivity di sebelah Database Password untuk memeriksa apakah informasi tersebut valid. Jika informasi valid, pesan Passed akan muncul. Jika pesan Failed muncul, klik Check di sebelah Failed. Kemudian, modifikasi informasi berdasarkan hasil pemeriksaan.
Enkripsi
Menentukan apakah akan mengenkripsi koneksi ke instance sumber. Pilih Non-encrypted atau SSL-encrypted. Jika Anda memilih SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instance ApsaraDB RDS for MySQL sebelum mengonfigurasi tugas migrasi data. Untuk informasi lebih lanjut, lihat Konfigurasikan enkripsi SSL untuk instance ApsaraDB RDS for MySQL.
CatatanParameter Encryption hanya tersedia untuk wilayah di daratan Tiongkok.
Database Tujuan
Tipe Instance
Tipe database tujuan. Pilih RDS Instance.
Wilayah Instance
Wilayah tempat instance ApsaraDB RDS for MySQL tujuan berada.
ID Instance RDS
ID instance ApsaraDB RDS for MySQL tujuan.
Akun Database
Akun database instance ApsaraDB RDS for MySQL tujuan. Akun tersebut harus memiliki izin baca/tulis pada database tujuan.
Kata Sandi Database
Kata sandi akun database instance ApsaraDB RDS for MySQL.
CatatanSetelah Anda menentukan informasi tentang instance RDS, Anda dapat klik Test Connectivity di sebelah Database Password untuk memeriksa apakah informasi tersebut valid. Jika informasi valid, pesan Passed akan muncul. Jika pesan Failed muncul, klik Check di sebelah Failed. Kemudian, modifikasi informasi berdasarkan hasil pemeriksaan.
Enkripsi
Menentukan apakah akan mengenkripsi koneksi ke instance tujuan. Pilih Non-encrypted atau SSL-encrypted. Jika Anda memilih SSL-encrypted, Anda harus mengaktifkan enkripsi SSL untuk instance ApsaraDB RDS for MySQL sebelum mengonfigurasi tugas migrasi data. Untuk informasi lebih lanjut, lihat Konfigurasikan enkripsi SSL untuk instance ApsaraDB RDS for MySQL.
CatatanParameter Encryption hanya tersedia untuk wilayah di Tiongkok Daratan.
Di sudut kanan bawah halaman, klik Set Whitelist and Next.
CatatanBlok CIDR server DTS secara otomatis ditambahkan ke daftar putih instance ApsaraDB RDS for MySQL sumber dan tujuan. Ini memastikan bahwa server DTS dapat terhubung ke instance ApsaraDB RDS for MySQL sumber dan tujuan.
Pilih jenis migrasi dan objek yang akan dimigrasi.

Parameter
Deskripsi
Jenis Migrasi
Migrasi skema telah selesai di Langkah 1. Oleh karena itu, Anda tidak perlu memilih Migrasi Skema di langkah ini.
Untuk hanya melakukan migrasi data penuh, pilih Full Data Migration saja.
PeringatanUntuk memastikan konsistensi data, kami merekomendasikan agar Anda tidak menulis data ke instance sumber selama migrasi data penuh.
Untuk memastikan kontinuitas layanan selama migrasi data, pilih Full Data Migration dan Incremental Data Migration.
CatatanOperasi SQL berikut dapat dimigrasi selama migrasi data inkremental: INSERT, UPDATE, DELETE, CREATE TABLE, ALTER TABLE, RENAME TABLE, TRUNCATE TABLE, dan DROP TABLE.
Pilih objek yang akan dimigrasi
Di bagian Available, pilih objek yang skemanya telah dimigrasi di Langkah 1, dan klik ikon
untuk menambahkan objek ke bagian Selected Objects.PeringatanKami merekomendasikan agar Anda tidak menggunakan fitur pemetaan nama objek. Jika tidak, tugas migrasi data gagal.
Mulai tugas migrasi.
Di sudut kanan bawah halaman, klik Precheck.
CatatanSebelum Anda dapat memulai tugas migrasi data, DTS melakukan pra-periksa. DTS hanya dapat memigrasi data jika pra-periksa berhasil.
Jika tugas gagal melewati pra-periksa, Anda dapat klik ikon
di sebelah setiap item yang gagal untuk melihat detailnya. Perbaiki masalah berdasarkan penyebabnya dan jalankan pra-periksa lagi.
Setelah tugas migrasi data melewati pra-periksa, klik Next.
Di kotak dialog Confirm Settings, tentukan parameter Channel Specification dan centang kotak untuk menyetujui Data Transmission Service (Pay-As-You-Go) Service Terms.
Klik Buy and Start untuk memulai tugas migrasi data.
Langkah 3: Alihkan beban kerja Anda
Alihkan beban kerja Anda menggunakan salah satu solusi berikut:
Solusi Rollback: Anda tidak perlu mengedit kode aplikasi Anda. Namun, kegagalan rollback mungkin terjadi.
Setelah migrasi data selesai, verifikasi data di instance ApsaraDB RDS for MySQL tujuan.
Siapkan solusi rollback, lalu alihkan beban kerja Anda ke instance tujuan. Solusi rollback didasarkan pada tugas migrasi data dalam arah yang berlawanan. Tugas ini memungkinkan Anda mengalihkan beban kerja kembali ke instance sumber asli. Untuk informasi lebih lanjut, lihat Alihkan Beban Kerja ke Database Tujuan.
Uji fitur bisnis Anda. Jika fitur berfungsi seperti yang diharapkan, hapus tugas migrasi data dalam arah yang berlawanan.
Opsional:Jika Anda tidak lagi membutuhkan instance ApsaraDB RDS for MySQL sumber, lepaskan instance tersebut.
Solusi Dual-Write: Solusi ini memastikan tingkat keberhasilan rollback yang tinggi. Namun, upaya besar diperlukan untukmengedit kode aplikasi Anda.
Edit kode aplikasi untuk mengimplementasikan solusi dual-write. Solusi dual-write menulis perubahan data ke instance sumber dan tujuan.
Hentikan tugas migrasi data.
- Migrasi Data Penuh
Jangan hentikan tugas secara manual selama migrasi data penuh. Jika tidak, sistem mungkin gagal memigrasi semua data. Tunggu hingga tugas migrasi berakhir secara otomatis.
- Migrasi Data Inkremental
Tugas tidak berakhir secara otomatis selama migrasi data inkremental. Anda harus menghentikan tugas migrasi secara manual.
- Tunggu hingga bilah kemajuan tugas menunjukkan Incremental Data Migration dan The migration task is not delayed. Lalu, hentikan penulisan data ke database sumber selama beberapa menit. Dalam beberapa kasus, bilah kemajuan menunjukkan waktu penundaan incremental data migration.
- Setelah status incremental data migration berubah menjadi The migration task is not delayed, hentikan tugas migrasi secara manual.

CatatanPastikan tidak ada sesi yang melakukan operasi penulisan. Untuk mengambil informasi sesi, Anda dapat masuk ke instance sumber dan menjalankan pernyataan
show processlist;.- Migrasi Data Penuh
Setelah migrasi data selesai, verifikasi data di instance ApsaraDB RDS for MySQL tujuan.
Aktifkan solusi dual-write untuk aplikasi Anda. Lalu, perubahan data akan ditulis ke instance sumber dan tujuan.
Uji fitur bisnis Anda di instance tujuan. Jika fitur berfungsi seperti yang diharapkan, nonaktifkan solusi dual-write.
Opsional:Jika Anda tidak lagi membutuhkan instance ApsaraDB RDS for MySQL sumber, lepaskan instance tersebut.