MySQL Export Database using Command Line (mysqldump)
Isi kandungan:
- Sintaks Perintah Mysqldump
- Backup Pangkalan Data MySQL Tunggal
- Backup Multiple MySQL Databases
- Sandaran Semua Pangkalan MySQL
- Sandarkan semua pangkalan data MySQL untuk memisahkan fail
- Buat Backup Pangkalan Data MySQL Mampat
- Buat Backup dengan Timestamp
- Memulihkan dump MySQL
- Pulihkan Pangkalan Data MySQL Tunggal dari Dump MySQL Penuh
- Eksport dan Import Pangkalan Data MySQL dalam Satu Perintah
- Automate Backups with Cron
- Kesimpulannya
Tutorial ini menerangkan cara untuk membuat sandaran dan memulihkan pangkalan data MySQL atau MariaDB dari baris perintah menggunakan utiliti mysqldump.
Fail sandaran yang dibuat oleh utiliti mysqldump pada dasarnya adalah satu set penyataan SQL yang boleh digunakan untuk mencipta semula pangkalan data asal. Perintah mysqldump juga boleh menjana fail dalam format CSV dan XML.
Anda juga boleh menggunakan utiliti mysqldump untuk memindahkan pangkalan data MySQL anda ke pelayan MySQL lain.
Sintaks Perintah Mysqldump
Sebelum masuk ke cara menggunakan arahan mysqldump, mari bermula dengan mengkaji sintaks dasar.
Ungkapan utiliti mysqldump mengambil bentuk berikut:
mysqldump > file.sql
-
options
- Pilihan mysqldumpfile.sql
-file.sql
dump (sandaran)
Untuk menggunakan arahan mysqldump pelayan MySQL mesti diakses dan berjalan.
Backup Pangkalan Data MySQL Tunggal
Kes penggunaan yang paling umum alat mysqldump adalah untuk membuat sandaran pangkalan data tunggal.
Sebagai contoh, untuk membuat sandaran pangkalan data yang dinamakan
database_name
menggunakan
root
pengguna dan simpannya ke fail bernama
database_name.sql
anda akan menjalankan perintah berikut:
mysqldump -u root -p database_name > database_name.sql
Anda akan diminta memasukkan kata laluan root. Selepas pengesahan berjaya, proses dump akan bermula. Bergantung kepada saiz pangkalan data, proses itu boleh mengambil sedikit masa.
mysqldump database_name > database_name.sql
Backup Multiple MySQL Databases
Untuk membuat sandaran pelbagai pangkalan data MySQL dengan satu arahan, anda perlu menggunakan pilihan
--database
diikuti dengan senarai pangkalan data yang ingin anda sandarkan. Setiap nama pangkalan data mesti dipisahkan mengikut ruang.
mysqldump -u root -p --databases database_name_a database_name_b > databases_a_b.sql
Perintah di atas akan mencipta fail dump yang mengandungi kedua-dua pangkalan data.
Sandaran Semua Pangkalan MySQL
Gunakan pilihan
--all-databases
untuk menyokong semua pangkalan data MySQL:
mysqldump -u root -p --all-databases > all_databases.sql
Sama seperti contoh terdahulu arahan di atas akan mencipta fail dump tunggal yang mengandungi semua pangkalan data.
Sandarkan semua pangkalan data MySQL untuk memisahkan fail
Utiliti
mysqldump
tidak menyediakan pilihan untuk membuat sandaran semua pangkalan data untuk memisahkan fail tetapi kita dengan mudah mencapai itu dengan bash sederhana
FOR
gelung:
for DB in $(mysql -e 'show databases' -s --skip-column-names); do mysqldump $DB > "$DB.sql"; done
Perintah di atas akan membuat fail pembuangan berasingan untuk setiap pangkalan data menggunakan nama pangkalan data sebagai nama fail.
Buat Backup Pangkalan Data MySQL Mampat
Sekiranya saiz pangkalan data adalah sangat besar ia adalah idea yang baik untuk memampatkan output. Untuk melakukan itu hanya paip output ke utiliti
gzip
, dan alihkannya ke fail seperti ditunjukkan di bawah:
mysqldump database_name | gzip > database_name.sql.gz
Buat Backup dengan Timestamp
mysqldump database_name > database_name-$(date +%Y%m%d).sql
Arahan di atas akan membuat fail dengan format berikut
database_name-20180617.sql
Memulihkan dump MySQL
Anda boleh memulihkan dump MySQL menggunakan alat
mysql
. Sintaks umum arahan adalah seperti berikut:
mysqld database_name < file.sql
Dalam kebanyakan kes, anda perlu membuat pangkalan data untuk diimport. Jika pangkalan data sudah wujud, pertama anda perlu memadamnya.
Dalam contoh berikut, arahan pertama akan membuat pangkalan data yang dinamakan
database_name
dan kemudian ia akan mengimport dump
database_name.sql
ke dalamnya:
mysql -u root -p -e "create database database_name";
mysql -u root -p database_name < database_name.sql
Pulihkan Pangkalan Data MySQL Tunggal dari Dump MySQL Penuh
mysql --one-database database_name < all_databases.sql
Eksport dan Import Pangkalan Data MySQL dalam Satu Perintah
Daripada membuat fail dump dari satu pangkalan data dan kemudian mengimport sandaran ke dalam pangkalan data MySQL yang lain, anda boleh menggunakan satu-liner berikut:
mysqldump -u root -p database_name | mysql -h remote_host -u root -p remote_database_name
Perintah di atas akan
remote_database_name
output kepada klien mysql pada hos jauh dan akan mengimportnya ke pangkalan data bernama
remote_database_name
. Sebelum menjalankan arahan, pastikan pangkalan data telah wujud di pelayan jauh.
Automate Backups with Cron
Menggali proses penyandaran pangkalan data adalah semudah mencipta tugas cron apa yang akan menjalankan perintah mysqldump pada masa yang ditentukan.
Untuk menyediakan sandaran automatik pangkalan data MySQL menggunakan cronjob, ikuti langkah-langkah berikut:
-
Buat fail bernama
.my.cnf
dalam direktori rumah pengguna anda:sudo nano ~/.my.cnf
Salin dan tampal teks berikut ke dalam fail.my.cnf.
user = dbuser password = dbpasswd
Jangan lupa untuk menggantikan
dbuser
dandbpasswd
dengan pengguna pangkalan data dan kata laluan pengguna.Hadkan keizinan fail kelayakan supaya hanya pengguna anda mengaksesnya:
chmod 600 ~/.my.cnf
Buat direktori untuk menyimpan sandaran:
mkdir ~/db_backups
Buka fail crontab pengguna anda:
crontab -e
Tambah kerja cron berikut yang akan membuat sandaran nama database
mydb
setiap hari pada pukul 3 pagi:0 3 * * * /usr/bin/mysqldump -u dbuser mydb > /home/username/db_backups/mydb-$(date +%Y%m%d).sql
Jangan lupa untuk menggantikan
username
denganusername
anda yang sebenar.
Anda juga boleh mencipta satu lagi cronjob untuk memadamkan sebarang sandaran yang lebih lama daripada 30 hari:
find /path/to/backups -type f -name "*.sql" -mtime +30 -delete
Sudah tentu, anda perlu menyesuaikan arahan mengikut lokasi sandaran dan nama fail anda. Untuk mengetahui lebih lanjut mengenai arahan mencari, lihat Cara Cari Fail di Linux Menggunakan panduan Talian Perintah.
Kesimpulannya
Tutorial ini hanya meliputi asas-asas, tetapi ia harus menjadi permulaan yang baik untuk sesiapa sahaja yang ingin belajar bagaimana membuat dan memulihkan pangkalan data MySQL dari baris perintah menggunakan utiliti mysqldump.
Anda juga boleh menyemak tutorial tentang bagaimana untuk menetapkan semula kata laluan root MySQL jika anda terlupa.
mysql mariadb backup mysqldumpOops! Backup: A Time Machine for Windows - GIRLS SPECIAL GIVEAWAY! untuk Windows! Oops! Backup bukan produk sandaran biasa: Terima kasih kepada teknologi BackInTime ™ yang unik Oops! Backup membolehkan anda untuk perjalanan kembali ke masa untuk memulihkan versi yang berbeza dari dokumen penting, foto atau sebarang fail lain. Oops! Backup adalah sandaran hibrid dan kawalan versi.

Pernah sengaja dipadam, tidak kena pada tempatnya, hilang atau mengatasi tulisan penting dokumen, foto berharga atau fail lain? Atau mungkin anda bekerja pada dokumen atau foto hanya untuk menyedari bahawa anda telah membuat keadaan huru-hara - dan walaupun anda sangat ingin kembali kepada asal, anda tidak boleh !? Menghadapi rasuah dokumen mendadak? Atau mungkin anda menyelamatkan dokumen lain dengan kesilapan ...?
Bagaimana untuk membuat sandaran / memulihkan aplikasi android menggunakan sandaran titanium

Ketahui Cara Mencadangkan / Memulihkan Apl Android menggunakan Titanium Backup.
Bagaimana untuk membuat sandaran dan memulihkan data pada telefon tingkap 8

Inilah Cara Sandaran dan Pulihkan Data pada Windows Phone 8.