脚本如下:
[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老徐
希望,对你有用
网友评论