Membuat Backup script Untuk Semua Database MySQL adalah hal wajib setelah content media seperti gambar, video atau jenis file lainnya.
karena Pengalaman kami sering menemui pelanggan yang mengabaikan backup. Padahal kami sendiri sering push mengenai backup ini hampir setiap hari dan akhirnya pelanggan curhat kepada kami mengenai backup dikarenakan hilangnya data karena belum membayar server atau server crash. sungguh ironis bukan?
pada tulisan kali ini GemarOprek.com akan membahas secara rinci bagaimana membuat backup database pada MySQL ataupun MariaDB.

untuk membuat backup semua database telah kami bahas pada artikel yang berjudul Cara Backup Dan Restore Database MySQL, tapi kali ini kami akan membahas dengan bash script.

buat list database yang ingin dibackup dengan cara

mysql -u USERNAME_MYSQL -pPASSWORD_MYSQL -Bse 'show databases' > listfile.txt

namun jika MySQL root anda tanpa password, anda bisa menjalankan perintah dibawah ini

mysql -Bse 'show databases' > listfile.txt

lalu hasilnya akan seperti dibawah ini

gemaroprek_DB1
gemaroprek_DB2
gemaroprek_DB3
gemaroprek_DB4
gemaroprek_DB5
gemaroprek_DB6
information_schema
gemaroprek_DB7
gemaroprek_DB8
mysql
gemaroprek_DB9
performance_schema

anda dapat mengabaikan atau menghapus database information_schema, mysql dan performance_schema dikarenakan kita hanya perlu backup database yang penting saja

simpan file dengan nama listfile.txt tersebut lalu buat bash script seperti dibawah ini

DESTDIR="/backup/"
date=$(date +"%d-%b-%Y")

echo "Dumping SQL Databases";
cat listfile.txt | while read line
do
dbname=$line
if [ $line != "information_schema" ] ;
then
mysqldump -u MYSQLUSERNAME -pMYSQLUSERPASSWORD $dbname > /Destionation_BACKUP_FOLDER/$dbname.sql
fi
done

untuk menjalankan script diatas melalui cronjob anda dapat menggunakan perintah dibawah ini

crontab -e

lalu masukkan baris ini pada bagian akhir

* 0 * * 0,3,6 sh /root/backup_ee.sh > /root/backup_status.txt

sekian artikel cara Membuat Backup Script Untuk Semua Database MySQL ini. Jika anda memiliki pertanyaan silahkan kontak kami