步骤:1, 首先编写一个 脚本 backupdb.sh #!/bin/bash #备份路径 BACKUP=/data/backup/sql/dy #当前时间 DATETIME=$(date +%Y-%m-%d_%H%M%S) echo "===备份开始===" echo "备份文件存放于${BACKUP}/$DATETIME.tar.gz" #数据库地址 HOST=localhost #数据库用户名 DB_USER=root #数据库密码 DB_PW=Ces123456 #创建备份目录 [ ! -d "${BACKUP}/$DATETIME" ] && mkdir -p "${BACKUP}/$DATETIME" #后台系统数据库 DATABASE=dy_backgroundms mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip >${BACKUP}/$DATETIME/$DATABASE.sql.gz #投入品监管数据库 DATABASE=dy_firip mysqldump -u${DB_USER} -p${DB_PW} --host=$HOST -q -R --databases $DATABASE | gzip > ${BACKUP}/$DATETIME/$DATABASE.sql.gz #压缩成 tar.gz 包 cd $BACKUP tar -zcvf $DATETIME.tar.gz $DATETIME #删除备份目录 rm -rf ${BACKUP}/$DATETIME #删除 30 天前备份的数据 find $BACKUP -mtime +30 -name "*.tar.gz" -exec rm -rf {} \; echo "===备份成功===" 步骤 2: 给 /home/backupdb.sh 一个可以执行的权限 chmod u+x backupdb.sh 步骤 3: 将 backupdb.sh 部署到 crontab crontab -e 增加 * 2 * * * /home/backupdb.sh 到此 ok!