今天主要是給大家寫一個備份mysql數(shù)據(jù)庫的腳本,平常再生產(chǎn)環(huán)境下應該用的都是備份軟件之類的,但是在本人駐地期間,甲方會要求有本地數(shù)據(jù)文件備份的,所以當時就寫了一個這個腳本用于備份部分數(shù)據(jù)庫文件。 今天其實也是為了承接上一篇文章才寫了這個腳本,zabbix使用的過程中,最好也備份一下zabbix的數(shù)據(jù)庫,就不說多了給大家直接上腳本吧 ,如果大家有那個地方不太懂的可以私密我。 ----------------------------------------------------------------- #!/bin/bash #備份目錄 back='/home/wln/' LOG='/home/wln/logs/' #用戶名 USER='root' #密碼 PASSWD='zabbix' #主機名或ip HOST='localhost' #時間參數(shù) time=`date +'%Y-%m-%d %H:%M:%S'` echo -e '\033[34m ***********backup***********\033[0m' b='' i=0 while [ $i -le 100 ] do printf 'Please wait...[%-50s]%d%%\r' $b $i sleep 0.1 i=`expr 2 + $i` b=#$b done [ ! -d $backup ] && mkdir -p $backup || cd '$backup' >/dev/null 2>&1 mysqldump -u$USER -p$PASSWD -h$HOST -A -B -R -F --lock-all-tables >/home/wln/zabbix-$time.dump echo -e '\033[35m##You can query log in $LOG##\033[0m' if [[ $? == 0 ]];then echo -e '\033[35m##backup successful in $backup##\033[0m' else echo -e '\033[35m##backup failed in $backup##\033[0m' fi ------------------------------------------------------------------------- 接下來是一些注意的事項,給大家也一一列出來了,可以根據(jù)實際情況使用 1,腳本隨便放在哪里都可以 推薦放在家目錄中/root 2.備份目錄需要修改一下 修改到存儲空間足夠多的目錄下 推薦 df -h 查看一下 3,給執(zhí)行權(quán)限,chmod +x /root/mysqldump 4,推薦寫到定時任務里 crontab -e 0 3 * * 7 sh /root/mysqldump [root@zabbix-server ~]# systemctl enable crond [root@zabbix-server ~]# systemctl restart crond |
|