建立備份目錄
cd /home
mkdir backup
cd backup
建立備份 shell 指令碼:
vim databasename.sh
#!/bin/bash
/usr/local/mysql/bin/mysqldump -uusername -ppassword databasename > /home/backup/databasename_$(date +%y%m%d_%h%m%s).sql
對備份進行壓縮:
#!/bin/bash
/usr/local/mysql/bin/mysqldump -uusername -ppassword databasename | gzip > /home/backup/databasename_$(date +%y%m%d_%h%m%s).sql.gz
注意:
把 username 替換為實際的使用者名稱;
把 password 替換為實際的密碼;
把 databasename 替換為實際的資料庫名;
新增可執行許可權
chmod u+x databasename.sh
新增計畫任務
crontab -e
01 3 * * * root/home/backup/databasename.sh
表示每天 3 點鐘執行備份
crontab 的格式
第 1 列分鐘 1~59
第 2 列小時 1~23(0 表示子夜)
第 3 列日 1~31
第 4 列月 1~12
第 5 列星期 0~6(0 表示星期天)
第 6 列要執行的命令
下面是 crontab 的格式:
分 時 日 月 星期 要執行的命令
這裡有 crontab 檔案條目的一些例子:
30 21 * * * /usr/local/apache/bin/apachectl restart
上面的例子表示每晚的 21:30 重啟 apache。
45 4 1,10,22 * * /usr/local/apache/bin/apachectl restart
上面的例子表示每月 1、10、22 日的 4 : 45 重啟 apache。
10 1 * * 6,0 /usr/local/apache/bin/apachectl restart
上面的例子表示每週
六、週日的 1 : 10 重啟 apache。
0,30 18-23 * * * /usr/local/apache/bin/apachectl restart
上面的例子表示在每天 18 : 00 至 23 : 00 之間每隔 30 分鐘重啟 apache。
0 23 * * 6 /usr/local/apache/bin/apachectl restart
上面的例子表示每星期六的 11 : 00 pm 重啟 apache。
0 */1 * * * /usr/local/apache/bin/apachectl restart
每一小時重啟 apache
0 23-7/1 * * * /usr/local/apache/bin/apachectl restart
晚上 11 點到早上 7 點之間,每隔一小時重啟 apache
0 11 4 * mon-wed /usr/local/apache/bin/apachectl restart
每月的 4 號與每週一到週三的 11 點重啟 apache
0 4 1 jan * /usr/local/apache/bin/apachectl restart
一月一號的 4 點重啟 apache
MySQL資料庫定時自動備份指令碼
web系統,最重要的事項就是資料庫的安全性和完整性。定時做好備份,非常重要,千萬不要在這個問題上偷懶。如果你的重要資料丟失了,會讓你欲哭無淚。匯出表結構和資料 mysqldump uroot pmypassword databases fansunion result file var www ba...
mysql資料庫自動定時備份指令碼
1 shell指令碼如下 now date d m y file tmp mysqldump238cem mysqldumpfile238cem now.sql echo 備份開始 echo 備份檔案位於本地 tmp mysqldump238cem mysqldump uroot p skieer ...
MySQL資料庫定時自動備份指令碼
web系統,最重要的事項就是資料庫的安全性和完整性。定時做好備份,非常重要,千萬不要在這個問題上偷懶。如果你的重要資料丟失了,會讓你欲哭無淚。匯出表結構和資料 mysqldump uroot pmypassword databases fansunion result file var www ba...