linux下應用crontab對mysql數據庫進行定時備份
@(編程)
mysql數據庫提供了備份命令mysqldump
,可以結合crontab命令進行定時備份。
我寫了一個mysqlbackup.sh的腳本,此腳本按照日期在當前目錄下創建一個文件夾,同時在此目錄下備份一個文件。內容如下:
#!/bin/bash
#設置mysql備份目錄
folder=/home/chzhao/mysqldump
cd $folder
day=`date +%Y%m%d`
rm -rf $day
mkdir $day
cd $day
#數據庫服務器,一般為localhost
host=localhost
#用戶名
user=root
#密碼
password=password
#要備份的數據庫
db=wordpress
#數據要保留的天數
days=3
mysqldump -h$host -u$user -p$password $db>backup.sql
zip backup.sql.zip backup.sql
rm backup.sql
cd ..
day=`date -d "$days days ago" +%Y%m%d`
rm -rf $day
另外,需要配置crontab。假設上述文件位置為/home/chzhao/bin/mysqlbackup.sh
,則按以下命令配置crontab.
crontab -e
出現crontab的配置窗口,默認的編輯器是vim。
輸入:
0 16 * * * /home/chzhao/bin/mysqlbackup.sh
表示每天的16點執行此腳本。
配置完畢之后,可以通過命令crontab -l
查看crontab的配置情況。