全部产品
Search
文档中心

PolarDB:Migrasi data dari database MySQL yang dikelola sendiri ke kluster PolarDB for MySQL dengan menggunakan mysqldump

更新时间:Jul 06, 2025

Topik ini menjelaskan cara memigrasikan data dari database MySQL yang dikelola sendiri ke kluster PolarDB for MySQL menggunakan mysqldump.

Prasyarat

Operasi berikut telah selesai dilakukan untuk kluster tujuan PolarDB for MySQL:

Perbedaan antara metode migrasi data

Anda dapat menggunakan mysqldump atau Data Transmission Service (DTS) untuk memigrasikan data dari database MySQL yang dikelola sendiri ke kluster PolarDB for MySQL. Tabel berikut menjelaskan perbedaan antara kedua metode migrasi tersebut.

Item

mysqldump

DTS

Versi database MySQL yang dikelola sendiri

Tidak ada batasan

5.1, 5.5, 5.6, 5.7, atau 8.0

Migrasi skema dan migrasi data penuh

Didukung

Didukung

Migrasi data inkremental

Tidak didukung

Didukung

Migrasi panas

Tidak didukung

Didukung

Catatan

Untuk informasi lebih lanjut tentang cara memigrasikan data menggunakan DTS, lihat Migrasi data dari database MySQL yang dikelola sendiri ke kluster PolarDB for MySQL.

Catatan penggunaan

Nama tabel yang dimigrasikan ke kluster tujuan PolarDB for MySQL tidak peka terhadap huruf besar/kecil dan secara otomatis diubah menjadi huruf kecil.

Prosedur

Catatan

Contoh ini menggunakan database MySQL 8.0 yang dikelola sendiri yang berjalan pada sistem operasi Linux.

  1. Gunakan mysqldump untuk mengekspor data, prosedur tersimpan, pemicu, dan fungsi dari database MySQL yang dikelola sendiri.

    Catatan

    Jangan memperbarui data saat proses ekspor sedang berlangsung.

    1. Di CLI Linux, jalankan perintah berikut untuk mengekspor data dari database MySQL yang dikelola sendiri.

      Catatan

      Saat memasukkan endpoint dari database MySQL yang dikelola sendiri, perhatikan hal-hal berikut:

      • Jika database MySQL yang dikelola sendiri diterapkan pada instance Elastic Compute Service (ECS), masukkan 127.0.0.1.

      • Jika database MySQL yang dikelola sendiri adalah database lokal, masukkan endpoint publik dari database tersebut.

      mysqldump -h <Endpoint dari database MySQL yang dikelola sendiri>  -u user -p --opt --default-character-set=utf8 --hex-blob <Nama dari database MySQL yang dikelola sendiri> --skip-triggers --skip-lock-tables > /tmp/<Nama dari database MySQL yang dikelola sendiri>.sql

      Contoh

      mysqldump -h 127.0.0.1 -u user -p --opt --default-character-set=utf8 --hex-blob testdb --skip-triggers --skip-lock-tables > /tmp/testdb.sql
    2. (Opsional) Di CLI Linux, jalankan perintah berikut untuk mengekspor prosedur tersimpan, pemicu, dan fungsi dari database MySQL yang dikelola sendiri.

      Catatan

      Jika database tidak memiliki prosedur tersimpan, pemicu, atau fungsi, lewati langkah ini.

      mysqldump -h 127.0.0.1 -u user -p --opt --default-character-set=utf8 --hex-blob <Nama dari database MySQL yang dikelola sendiri> -R | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/*/' > /tmp/<Nama dari database MySQL yang dikelola sendiri> Trigger.sql

      Contoh

      mysqldump -h 127.0.0.1 -u user -p --opt --default-character-set=utf8 --hex-blob testdb -R | sed -e 's/DEFINER[ ]*=[ ]*[^*]*\*/\*/' > /tmp/testdbTrigger.sql
  2. Jalankan perintah berikut untuk mengimpor file yang diekspor ke kluster tujuan PolarDB:

    mysql -h <Endpoint dari kluster PolarDB> -P <Port dari kluster PolarDB> -u <Akun dari kluster PolarDB> -p <Nama database PolarDB> < /tmp/<Nama dari database MySQL yang dikelola sendiri>.sql
    mysql -h <Endpoint dari kluster PolarDB> -P <Port dari kluster PolarDB> -u <Akun dari kluster PolarDB> -p <Nama database PolarDB> < /tmp/<Nama dari database MySQL yang dikelola sendiri>Trigger.sql

    Contoh

    mysql -h polardbtest.mysql.polardb.rds.aliyuncs.com -P 3306 -u testuser -p testdb  < /tmp/testdb.sql
    mysql -h polardbtest.mysql.polardb.rds.aliyuncs.com -P 3306 -u testuser -p testdb  < /tmp/testdbTrigger.sql
    Catatan
    • Nama database PolarDB harus merupakan nama database yang sudah ada di kluster PolarDB. Untuk informasi lebih lanjut tentang cara membuat database, lihat Manajemen Database.

    • Akun dari kluster PolarDB harus merupakan akun istimewa atau akun yang memiliki izin baca dan tulis.

  3. Setelah mengimpor file, Anda dapat masuk ke database kluster PolarDB untuk memeriksa apakah data normal. Untuk informasi lebih lanjut tentang cara masuk ke database kluster PolarDB, lihat Hubungkan ke kluster.

FAQ

Apa yang harus saya lakukan jika pesan kesalahan Akses ditolak; Anda memerlukan (setidaknya salah satu) hak istimewa SUPER untuk operasi ini muncul?

Hapus pernyataan dalam skrip yang memerlukan hak istimewa SUPER, lalu jalankan skrip tersebut.