mysql數據庫自動備份

首先感謝51cto技術羣的blackanger,是他幫助指導我完成了這個做業,再次感謝
 
爲了減輕DBA的工做,數據庫自動備份固然少不了,今天我和你們一塊兒來學習經過crontab實現mysql數據的自動備份
 
 
咱們在/etc/cron.daily/目錄下建立文件backup內容以下
 
#!/bin/bash
#定義變量name的值,/bin/date日期格式爲Y年-m月-d日
name=`/bin/date "+%Y-%m-%d"`  
#/usr/bin/mysqldump  備份數據庫的命令路徑
#-u root 數據庫的用戶名
#-p password 數據庫的密碼把password替換成你本身的密碼
#--opt database 你要備份的數據庫 若是要備份全部的庫你能夠把--opt database替換成--all-databases前面那個database是你數據庫的名字,後面的databases是mysqldump的參數別搞混了
#/home/backup/database$name.sql這個是數據庫備份的路徑,$符號後面的name就是最前面定義的那個日期,備份的文件將會以你本身定義的文件名加當時的日期來命名
/usr/bin/mysqldump -u root -ppassword --opt test  > /home/backup/test$name.sql 
#這個就是備份全部數據庫的命令,和前面的有點小差異
/usr/bin/mysqldump -u root -ppassword --all-databases | gzip --fast > /home/backup/full$name.gz
不同的地方就是把--opt改爲了--all-databases,再就是後面的壓縮參數gzip,這個參數也可使用到前面的那個單個數據庫的備份命令中
保存退出
#修改文件backup爲可執行文件
chmod +x /etc/cron.daily/backup
進入crontab的配置文件
# cat /etc/crontab
#每小時執行一次/etc/cron.hourly/目錄下的文件
01 * * * * root run-parts /etc/cron.hourly
#天天執行一次/etc/cron.hourly/目錄下的文件,執行時間是04點
00 04 * * * root run-parts /etc/cron.daily
#每週執行一次/etc/cron.hourly/目錄下的文件,每週的第一天04點22分
22 4 * * 0 root run-parts /etc/cron.weekly
每個月執行一次/etc/cron.hourly/目錄下的文件,每個月的第一天04點42分
42 4 1 * * root run-parts /etc/cron.monthly
剛纔咱們已經把backup腳本建立到了/etc/cron.daily這個目錄下,也就是天天04點都會自動執行腳本作數據庫的備份了
#重啓crond服務
service crond restart
相關文章
相關標籤/搜索