All Products
Search
Document Center

Data Transmission Service:Migrasi akun database

Last Updated:Mar 29, 2026

Saat melakukan migrasi atau sinkronisasi data ke database tujuan, Anda biasanya perlu membuat ulang semua akun database sumber secara manual—proses yang memakan waktu, memerlukan pengetahuan mendalam tentang database, dan rentan terhadap kelalaian. Data Transmission Service (DTS) mengotomatiskan proses ini dengan memigrasikan akun database sumber, termasuk kata sandi dan hak istimewanya, ke database tujuan sebagai bagian dari tugas migrasi atau sinkronisasi.

Prasyarat

Sebelum memulai, pastikan bahwa:

  • Akun database sumber dan tujuan yang digunakan dalam tugas DTS memiliki hak istimewa yang diperlukan. Lihat Hak istimewa yang diperlukan untuk perintah GRANT yang tepat.

  • Schema Migration atau Schema Synchronization dipilih sebagai jenis migrasi atau sinkronisasi. Artinya, pada langkah Configure Objects and Advanced Settings di wizard Create Task, Schema Synchronization dipilih untuk parameter Synchronization Types, atau Schema Migration dipilih untuk parameter Migration Types.

Database yang didukung

Database MySQL dapat berupa instans ApsaraDB RDS for MySQL atau database MySQL yang dikelola sendiri.

Database sumberDatabase tujuan
MySQLMySQL, PolarDB for MySQL
PolarDB for MySQLMySQL, PolarDB for MySQL

Hak istimewa yang diperlukan

Sebelum migrasi akun dapat dijalankan, berikan hak istimewa berikut kepada akun tugas DTS untuk database sumber maupun tujuan.

Database sumber

Jalankan perintah berikut menggunakan akun istimewa. Ganti user dengan akun yang Anda gunakan untuk mengonfigurasi tugas DTS.

grant SELECT on mysql.user to user@'%';
grant SELECT on mysql.db to user@'%';
grant SELECT on mysql.columns_priv to user@'%';
grant SELECT on mysql.tables_priv to user@'%';

Database tujuan

Jalankan perintah berikut menggunakan akun istimewa. Ganti user dengan akun yang Anda gunakan untuk mengonfigurasi tugas DTS.

grant SELECT on mysql.user to user@'%';
grant CREATE USER on *.* to user@'%';
grant GRANT OPTION on *.* to user@'%';

Aktifkan migrasi akun

  1. Pada langkah Advanced Settings di wizard Create Task, atur Whether to Migrate Accounts menjadi Yes.

  2. Pilih akun yang akan dimigrasikan.

    Nama akun mengikuti format <username>@<host>, di mana <host> adalah host tempat akun tersebut dapat terhubung.
  3. Lengkapi konfigurasi tugas yang tersisa. Untuk detailnya, lihat Ikhtisar skenario sinkronisasi data atau Ikhtisar skenario migrasi data.

Hasil migrasi

Setelah tugas dijalankan, setiap akun akan memiliki salah satu hasil berikut:

  • Migrated: Akun dan semua hak istimewanya berhasil dimigrasikan sepenuhnya ke database tujuan.

  • Not migrated: Akun dilewati. Untuk melihat detailnya, buka tab User_Privilege di modul Schema Migration tugas DTS Anda. Akun yang sudah ada di database tujuan akan terdaftar sebagai akun yang dimigrasikan dengan anotasi user already exists. Untuk semua kondisi yang mencegah migrasi, lihat Batasan.

Batasan

Kondisi berikut mencegah migrasi akun atau memengaruhi perilaku migrasi. Periksa kondisi yang berlaku untuk versi database dan jenis akun Anda sebelum menjalankan tugas.

Versi database tujuan

  • Jika database tujuan adalah instans MySQL 5.6 atau kluster PolarDB for MySQL, migrasi akun tidak didukung.

Batasan sumber MySQL 8.0

  • Jika database sumber adalah MySQL 8.0, akun dengan hak istimewa dinamis tidak dapat dimigrasikan.

Batasan hak istimewa

  • Akun dengan hak istimewa RELOAD, CREATE TABLESPACE, FILE, atau ALL PRIVILEGES tidak dapat dimigrasikan ke database tujuan MySQL atau PolarDB for MySQL.

Batasan jenis akun

  • Akun sistem (root, mysql.infoschema, mysql.session, mysql.sys) dan akun bawaan tidak dapat dimigrasikan. Memilih akun-akun ini menyebabkan tugas DTS mengembalikan pesan Access denied for user 'XXXX'.

  • Akun yang sudah ada di database tujuan tidak dapat dimigrasikan. Jika tugas DTS dijalankan ulang atau beberapa tugas DTS sedang berjalan, akun yang akan dimigrasikan mungkin sudah ada di database tujuan.

  • Akun yang tidak sah tidak dapat dimigrasikan.

Perilaku setelah migrasi

  • Kata sandi akun tidak dapat diatur ulang selama migrasi.

  • Akun istimewa berubah menjadi akun standar di database tujuan dan kehilangan izin manajemen database.

  • Kami menyarankan agar tidak memigrasikan akun instans database Alibaba Cloud tujuan yang hanya diakses menggunakan localhost atau 127.0.0.1, karena akun tersebut tidak mendukung migrasi data.

FAQ

Mengapa saya tidak bisa memilih suatu akun?

Akun tersebut merupakan akun sistem, atau akun dengan nama yang sama sudah ada di database tujuan.

Mengapa daftar akun kosong?

Akun tugas DTS tidak memiliki hak istimewa yang diperlukan pada database sumber atau tujuan. Verifikasi hak istimewa tersebut menggunakan perintah GRANT di Hak istimewa yang diperlukan.