Cara mentransfer semua database MySQL dari server lama ke server baru

Cara mentransfer semua database MySQL dari server lama ke server baru

Mentransfer atau bermigrasi a Mysql/mariadb Basis data antar server biasanya hanya membutuhkan beberapa langkah mudah, tetapi transfer data dapat memakan waktu tergantung pada volume data yang ingin Anda transfer.

Dalam artikel ini, Anda akan belajar cara mentransfer atau memigrasi semua Mysql/mariadb Database dari Linux Server lama ke server baru, mengimpornya dengan sukses dan mengkonfirmasi bahwa data ada.

Catatan penting

  • Pastikan untuk memiliki versi MySQL yang sama diinstal di kedua server dengan distribusi yang sama.
  • Pastikan memiliki ruang bebas yang cukup di kedua server untuk menahan file dump database dan database yang diimpor.
  • Jangan pernah mempertimbangkan untuk memindahkan data direktori database ke server lain. Jangan pernah mengacaukan struktur internal database, jika Anda melakukannya, Anda akan menghadapi masalah di masa depan.

Ekspor database MySQL ke file dump

Mulailah pertama dengan login ke server lama Anda dan hentikan layanan mysql/mariadb menggunakan Systemctl perintah seperti yang ditunjukkan.

# systemctl hentikan mariadb atau # systemctl stop mysql 

Kemudian buang semua Mysql database ke satu file menggunakan perintah mysqldump.

# mysqldump -u [user] -p --all -databases> all_databases.SQL 

Setelah dump selesai, Anda siap mentransfer database.

Jika Anda ingin membuang satu database, Anda dapat menggunakan:

# mysqldump -u root -p --opt [nama basis data]> database_name.SQL 

Transfer file dump database mysql ke server baru

Sekarang gunakan perintah scp untuk mentransfer file dump basis data Anda ke server baru di bawah direktori home seperti yang ditunjukkan.

# scp all_databases.sql [email dilindungi]: ~/ [semua database] # scp database_name.SQL [Email Dilindungi]: ~/ [database SINGE] 

Setelah Anda terhubung, database akan ditransfer ke server baru.

Impor file dump basis data mySQL ke server baru

Setelah file dump mysql telah dilacak ke server baru, Anda dapat menggunakan perintah berikut untuk mengimpor semua database Anda ke MySQL.

# mysql -u [pengguna] -p --all -databases < all_databases.sql [All Databases] # mysql -u [user] -p newdatabase < database_name.sql [Singe Database] 

Setelah impor selesai, Anda dapat memverifikasi database di kedua server menggunakan perintah berikut pada shell mysql.

# mysql -u user -p # show basis data; 

Transfer database dan pengguna MySQL ke server baru

Jika Anda ingin memindahkan semua database MySQL, pengguna, izin dan struktur data server lama ke yang baru, Anda dapat menggunakan perintah rsync untuk menyalin semua konten dari direktori data mysql/mariadb ke server baru seperti yang ditunjukkan seperti yang ditunjukkan seperti.

# rsync -avz/var/lib/mysql/* [email dilindungi]:/var/lib/mysql/ 

Setelah transfer selesai, Anda dapat menetapkan kepemilikan direktori data MySQL/MariADB untuk pengguna dan mengelompokkan MySQL, lalu lakukan daftar direktori untuk memeriksa bahwa semua file telah ditransfer.

# chown mysql: mysql -r/var/lib/mysql/ # ls -l/var/lib/mysql/ 

Itu saja! Di artikel ini, Anda belajar cara dengan mudah memigrasikan semua database MySQL/MariADB dari satu server ke server lainnya. Bagaimana Anda menemukan metode ini dibandingkan dengan metode lain? Kami ingin mendengar dari Anda melalui formulir komentar di bawah ini untuk menghubungi kami.