GNU/Linux >> Belajar Linux >  >> Linux

MySQL:Cara Backup (Dump) dan Restore Database Menggunakan mysqldump

Artikel ini menunjukkan cara yang tepat cara membuang dan memulihkan database MySQL dari baris perintah di Linux menggunakan perintah mysqldump dan mysql.

Jika Anda menggunakan Database MySQL atau MariaDB, sangat penting bagi Anda untuk memahami cara melakukan backup dan restore data. Selain itu, Anda perlu menyimpan cadangan basis data secara teratur dan ini akan membantu Anda memulihkan data jika aplikasi mogok atau data rusak karena kegagalan sistem.

MySQL dan MariaDB menyertakan alat baris perintah yang dapat Anda gunakan untuk membuang dan memulihkan database dengan cepat dan mudah. mysqldump alat ini digunakan untuk mengekspor konten database ke file teks, sedangkan mysql klien dapat digunakan untuk mengimpor data dari file teks ke database MySQL/MariaDB.

Cara Menggunakan Perintah Dump MySQL

 mysqldump utilitas baris perintah mengekspor database ke file teks SQL. Dengan kata lain, ini digunakan untuk mengambil dump database MySQL.

Sintaks untuk mysqldump perintah diberikan di bawah ini:

mysqldump -u [username] -p [database_name] > [filename].sql

Dimana:

  • nama pengguna adalah nama pengguna MySQL/MariaDB Anda.
  • -p meminta kata sandi untuk pengguna ini.
  • nama_database adalah nama database yang ingin Anda backup.
  • namafile.sql adalah path lengkap ke file dump sql yang akan berisi cadangan.

Prosedur basis data, fungsi, tampilan, dan peristiwa dibuang pada saat pencadangan.

mysqldump:Mencadangkan Satu Database MySQL

Dalam contoh ini, database diberi nama my_wordpress . Ganti ini dengan nama database yang ingin Anda ekspor. Menurut sintaks, file cadangan akan dibuat di lokasi saat ini.

mysqldump -u root -p my_wordpress > my_wordpress_backup.sql

Setelah perintah dijalankan, masukkan kata sandi root MySQL Anda.

Ini membuat file dump MySQL bernama my_wordpress_backup.sql yang berisi semua pernyataan SQL untuk membuat tabel dan memulihkan data ke dalam database yang ada. Jika terjadi kesalahan selama proses ekspor, mysqldump akan mencetaknya ke layar.

Perintah tidak akan menghasilkan keluaran visual, tetapi Anda dapat memeriksa konten my_wordpress_backup.sql menggunakan perintah head untuk memeriksa apakah itu file dump MySQL yang sah.

head -n 5 my_wordpress_backup.sql
-- MariaDB dump 10.19  Distrib 10.5.9-MariaDB, for Linux (x86_64)
-- Host: localhost    Database: my_wordpress
 
-- Server version    10.3.27-MariaDB-0+deb10u1

mysqldump:Mencadangkan Beberapa Database MySQL

Untuk mencadangkan beberapa database MySQL dengan satu perintah, Anda perlu menggunakan --databases pilihan diikuti oleh daftar database yang ingin Anda backup. Selain itu, Anda dapat meletakkan file hasil di lokasi pilihan Anda.

Jalankan perintah berikut untuk membuat file dump MySQL my_backup.sql di /home/backups direktori dua database bernama my_wordpress dan ftpusers .

mysqldump -u root -p --databases my_wordpress ftpusers > /home/backups/my_backup.sql 

mysqldump:Cadangkan Semua Database MySQL

Gunakan --all-databases opsi untuk mencadangkan semua database MySQL:

mysqldump -u root -p --all-databases > all_db_backup.sql

Cara Membuat Backup Database MySQL Terkompresi

Jika ukuran database sangat besar, ada baiknya untuk mengompres output. Untuk melakukannya, cukup kirimkan output ke gzip perintah, dan mengarahkannya ke file seperti yang ditunjukkan di bawah ini:

mysqldump -u root -p my_wordpress | gzip > my_wordpress_backup.sql.gz

mysql:Pulihkan MySQL dari File Dump MySQL

Untuk memulihkan cadangan yang dibuat dengan mysqldump , Anda harus menggunakan mysql perintah.

mysql -u [username] -p [database_name] < [filename].sql

Dimana

  • nama pengguna adalah nama pengguna MySQL/MariaDB Anda.
  • -p meminta kata sandi untuk pengguna ini.
  • nama_database adalah nama database yang ingin Anda pulihkan.
  • namafile.sql adalah path lengkap ke file dump sql yang berisi cadangan.

mysql:Pulihkan Basis Data MySQL Tunggal

Anda dapat memulihkan semua tabel dari file dump MySQL dari database tertentu.

Pemulihan hanya dilakukan dengan perintah di bawah ini, di mana kita sekali lagi menentukan pengguna dan dimintai kata sandi, dan meneruskan my_wordpress_backup.sql file ke dalam database my_wordpress .

mysql -u root -p my_wordpress < my_wordpress_backup.sql

Anda akan dimintai kata sandi pengguna MySQL Anda.

Setelah ini selesai, database harus tersedia dalam instance MySQL yang sedang berjalan. File dump MySQL yang Anda impor juga akan tetap ada, sehingga Anda dapat menyimpannya dengan aman saat ini atau menghapusnya jika tidak diperlukan lagi.

mysql:Pulihkan Semua Database MySQL

Anda dapat memulihkan semua database server MySQL apa pun ke server MySQL lain dari file dump MySQL.

mysql -u root -p < all_db_backup.sql

Kesimpulan

Sekarang Anda dapat menyimpan cadangan file database Anda secara teratur dan memulihkan data saat diperlukan dengan mengikuti langkah-langkah di atas.

Tutorial ini juga berlaku ketika Anda ingin bermigrasi ke server baru. Cukup buat cadangan database di server lama Anda, dan unggah file dump MySQL ke server baru. Buat database tujuan di server baru, lalu jalankan file dump MySQL yang diunggah di database baru. Selain itu, Anda juga harus membuat ulang pengguna dan izin dari server MySQL lama ke server baru.

Untuk informasi lebih detail, berikut tautan ke dokumentasi resmi.

Jika Anda memiliki pertanyaan atau umpan balik, silakan tinggalkan komentar.


Linux
  1. Cara Backup dan Restore Database MySQL Menggunakan Command Line

  2. Cara Membuat Backup Database MySQL Menggunakan mysqldump di Ubuntu 20.04

  3. Bagaimana cara mengembalikan database MySQL menggunakan perintah di SSH?

  1. Cara mengoptimalkan dan memperbaiki database MySQL menggunakan phpMyAdmin

  2. Cara Mencadangkan dan Memulihkan Basis Data Postgres

  3. Cara menjadwalkan pencadangan basis data MySQL di Ubuntu

  1. Cara Mencadangkan &Memulihkan Basis Data MySQL

  2. Cara Mencadangkan dan Memulihkan Basis Data di PostgreSQL

  3. Backup dan Restore Database MySQL menggunakan mysqlhotcopy