Tạo script backup database hàng tuần

Hi các bạn,

Hôm trước lỡ tay nghịch hỏng mất con VPS và quên ko backup database 

Nên mềnh đã làm cái script chạy hàng tuần để tự động backup dữ liệu và đẩy lên bitbucket

Các bạn cần tạo file db.txt để liệt kê danh sách DB cần backup

Rồi setup cron job chạy hàng ngày / tuần

#At 02:00 on Sunday.
0 2 * * 7 /var/www/html/backup/mysql.sh > /var/www/html/logs/backup.log

Đây là nội dung file mysql.sh

#!/bin/bash
today=$(date '+%Y%m%d');

now=$(date);

echo "******** BEGIN BACKUP DATABASE at $now *******";

#Create backup folder

cd /var/www/html/backup/mysql;

mkdir -p $today;

cat db.txt | while read name 

do

   echo "> > > Start backup [$name] < < <"

  mysqldump -u root -pAhihi1234$ $name > "$name.sql"  

   zip "$today/$name.zip" "$name.sql"

   rm "$name.sql"

   echo "> > > End backup [$name] < < <"

done

#Commit to GIT

cd /var/www/html/backup

git add -A

git commit -m "[BACKUP DATABASE at $today]"

git push

echo '******** END BACKUP DATABASE *******';

Và đây là kết quả trên bitbucket

Tự backup và ko mất $, hị hị

Leave a comment