Mengimpor data dari database MySQL eksternal ke Amazon RDS for MySQL DB instans - Layanan Basis Data Relasional Amazon

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengimpor data dari database MySQL eksternal ke Amazon RDS for MySQL DB instans

Anda dapat mengimpor data dari database MariaDB atau MySQL yang ada ke RDS untuk MariaDB atau RDS untuk MySQL DB instance. Anda melakukannya dengan menyalin database dengan mysqldump dan menyalurkannya langsung ke RDS untuk MariaDB atau RDS untuk MySQL DB instance. Utilitas baris perintah mysqldump umumnya digunakan untuk membuat pencadangan dan mentransfer data dari satu server MySQL atau MariaDB ke server lainnya. Utilitas ini disertakan dalam perangkat lunak klien MySQL dan MariaDB.

Di MariaDB 10.5, klien disebut mariadb-dump. Dimulai dengan MariaDB 11.0.1, Anda harus menggunakan alih-alih. mariadb-dump mysqldump

catatan

Jika Anda mengimpor atau mengekspor data dalam jumlah besar dengan instans MySQL DB, lebih andal dan lebih cepat untuk memindahkan data masuk dan keluar dari Amazon RDS dengan menggunakan file cadangan dan Amazon S3. xtrabackup Untuk informasi selengkapnya, lihat Memulihkan cadangan ke instans Amazon RDS for MySQL DB.

Amazon RDS tidak mendukung xtrabackup MariaDB atau. mariabackup Amazon RDS hanya mendukung impor dari Amazon S3 untuk MySQL.

mysqldumpPerintah khas untuk memindahkan data dari database eksternal ke instans Amazon RDS DB terlihat mirip dengan contoh berikut. Ganti nilai dengan informasi Anda sendiri. Untuk MariaDB 11.0.1 dan versi yang lebih tinggi, mysqldump ganti dengan dan dengan. mariadb-dump mysql mariadb

mysqldump -u local_user \ --databases database_name \ --single-transaction \ --compress \ --order-by-primary \ --routines=0 \ --triggers=0 \ --events=0 \ -plocal_password | mysql -u RDS_user \ --port=port_number \ --host=host_name \ -pRDS_password
penting

Pastikan tidak ada spasi di antara opsi -p dan kata sandi yang dimasukkan.

Sebagai praktik terbaik keamanan, tentukan kredensil selain petunjuk yang ditunjukkan dalam contoh ini.

Perhatikan rekomendasi dan pertimbangan berikut:

  • Jangan sertakan skema berikut dalam filedump:

    • sys

    • performance_schema

    • information_schema

    mariadb-dumpUtilitas mysqldump dan mengecualikan skema ini secara default.

  • Jika Anda perlu memigrasikan pengguna dan hak istimewa, pertimbangkan untuk menggunakan alat yang menghasilkan bahasa kontrol data (DCL) untuk membuatnya kembali, seperti utilitas. pt-show-grants

  • Untuk melakukan impor, pastikan pengguna yang melakukannya memiliki akses ke instans DB. Untuk informasi selengkapnya, lihat Mengontrol akses dengan grup keamanan.

Parameternya adalah sebagai berikut:

  • -u local_user – Gunakan untuk menentukan nama pengguna. Dalam penggunaan pertama parameter ini, tentukan nama akun pengguna pada database MariaDB atau MySQL lokal yang Anda identifikasi dengan parameter tersebut. --databases

  • --databases database_name – Gunakan untuk menentukan nama basis data pada instans MariaDB atau MySQL lokal yang ingin Anda impor ke Amazon RDS.

  • --single-transaction – Gunakan untuk memastikan bahwa semua data yang dimuat dari basis data lokal konsisten dengan satu titik waktu. Jika ada proses lain yang mengubah data saat mysqldump membacanya, penggunaan parameter ini dapat membantu menjaga integritas data.

  • --compress – Gunakan untuk mengurangi konsumsi bandwidth jaringan dengan mengompres data dari basis data lokal sebelum mengirimkannya ke Amazon RDS.

  • --order-by-primary – Gunakan untuk mengurangi waktu pemuatan dengan mengurutkan setiap tabel data berdasarkan kunci primernya.

  • --routinesGunakan jika rutinitas seperti prosedur atau fungsi tersimpan ada dalam database yang Anda salin. Setel parameter ke0, yang mengecualikan rutinitas selama proses impor. Kemudian kemudian secara manual membuat ulang rutinitas di database Amazon RDS.

  • --triggers— Gunakan jika pemicu ada di database yang Anda salin. Setel parameter ke0, yang mengecualikan pemicu selama proses impor. Kemudian kemudian buat ulang pemicu secara manual di database Amazon RDS.

  • --events— Gunakan jika peristiwa ada dalam database yang Anda salin. Setel parameter ke0, yang mengecualikan peristiwa selama proses impor. Kemudian kemudian buat ulang peristiwa secara manual di database Amazon RDS.

  • -plocal_password – Gunakan untuk menentukan kata sandi. Dalam penggunaan pertama parameter ini, tentukan kata sandi untuk akun pengguna yang Anda identifikasi dengan -u parameter pertama.

  • -u RDS_user – Gunakan untuk menentukan nama pengguna. Dalam penggunaan kedua parameter ini, tentukan nama akun pengguna pada database default untuk instance MariaDB atau MySQL DB yang Anda identifikasi dengan parameter. --host

  • --port port_number – Gunakan untuk menentukan port instans DB MariaDB atau MySQL Anda. Secara default, ini adalah 3306 kecuali Anda mengubah nilai saat membuat instans DB.

  • --host host_name – Gunakan untuk menentukan nama Sistem Nama Domain (DNS) dari titik akhir instans DB Amazon RDS, misalnya, myinstance.123456789012.us-east-1.rds.amazonaws.com. Anda dapat menemukan nilai endpoint dalam detail instans DB di konsol Amazon RDS.

  • -pRDS_password – Gunakan untuk menentukan kata sandi. Saat menggunakan parameter ini untuk kedua kalinya, Anda harus menentukan kata sandi untuk akun pengguna yang diidentifikasi oleh parameter -u kedua.

Pastikan Anda membuat prosedur, pemicu, fungsi, atau peristiwa tersimpan apa pun secara manual di dalam basis data Amazon RDS Anda. Jika Anda memiliki salah satu objek ini dalam database yang Anda salin, maka kecualikan mereka saat Anda menjalankan mysqldump ataumariadb-dump. Untuk melakukannya, sertakan parameter berikut dengan mariadb-dump perintah mysqldump atau Anda:

  • --routines=0

  • --triggers=0

  • --events=0

Contoh

Contoh berikut menyalin database world sampel pada host lokal ke RDS untuk MySQL DB instance. Ganti nilai dengan informasi Anda sendiri. Untuk menyalin database sampel ke RDS untuk instance MariaDB DB, mysqldump ganti dengan dan dengan. mariadb-dump mysql mariadb

Untuk Linux, macOS, atau Unix:

sudo mysqldump -u local_user \ --databases world \ --single-transaction \ --compress \ --order-by-primary \ --routines=0 \ --triggers=0 \ --events=0 \ -plocal_password | mysql -u rds_user \ --port=3306 \ --host=my_instance.123456789012.us-east-1.rds.amazonaws.com \ -pRDS_password

Untuk Windows:

Jalankan perintah berikut dalam prompt perintah yang telah dibuka dengan mengklik kanan Command Prompt pada menu program Windows dan memilih Run as administrator. Ganti nilai dengan informasi Anda sendiri. Untuk menyalin database sampel ke RDS untuk instance MariaDB DB, mysqldump ganti dengan dan dengan. mariadb-dump mysql mariadb

mysqldump -u local_user ^ --databases world ^ --single-transaction ^ --compress ^ --order-by-primary ^ --routines=0 ^ --triggers=0 ^ --events=0 ^ -plocal_password | mysql -u RDS_user ^ --port=3306 ^ --host=my_instance.123456789012.us-east-1.rds.amazonaws.com ^ -pRDS_password
catatan

Sebagai praktik terbaik keamanan, tentukan kredensil selain petunjuk yang ditampilkan dalam contoh.