腳本如下:
[root@isTester]~# vim mysqldbbackup.sh
#!/bin/bash
# 備份目錄
BACKUP=/data/backup/db
# 當前時間
DATETIME=$(date +%Y-%m-%d_%H%M%S)
echo $DATETIME
# 數據庫的地址
HOST=localhost
# 數據庫的用戶名
DB_USER=root
#數據庫的密碼
DB_PW=root
#備份的數據庫名
DATABASE=istester
#創建備份目錄 如果不存在就創建
[ ! -d "${BACKUP}/${DATETIME}" ] && mkdir -p "${BACKUP}/${DATETIME}"
# 備份數據庫
mysqldump -u${DB_USER} -p${DB_PW} --host=${HOST} -q -R --databases ${DATABASE} | gzip > ${BACKUP}/${DATETIME}/$DATETIME.sql.gz
# 將文件處理成 tar.gz
cd ${BACKUP}
tar -zcvf $DATETIME.tar.gz ${DATETIME}
# 刪除對應的備份目錄
rm -rf ${BACKUP}/${DATETIME}
# 刪除十天前的備份文件
find ${BACKUP} -atime +10 -name "*.tar.gz" -exec rm -rf {} \;
echo "備份數據庫${DATABASE} 成功"
給腳本 賦予 執行權限
[root@isTester]~# chmod +x mysqldbbackup.sh
執行腳本
[root@isTester]~# ./mysqlbackshell.sh
注:有興趣的,可以按這個腳本,去嘗試下
也可以自己改造下,
如果有SQL基礎問題,或者 Linux基礎問題,可以看看過往的文章
有類似的介紹
文 / IDO老徐
希望,對你有用