#!/bin/bash
DATE=`date +%Y%m%d%H%M` #every minute
DATABASE=springboot-admin #database name
DB_USERNAME=root #database username
DB_PASSWORD="mysql" #database password
BACKUP_PATH=/backup/mysqldata #backup path
#backup command
/usr/bin/mysqldump -u$DB_USERNAME -p$DB_PASSWORD -h 127.0.0.1 -R --opt $DATABASE | gzip > ${BACKUP_PATH}\/${DATABASE}_${DATE}.sql.gz
#just backup the latest 5 days
find ${BACKUP_PATH} -mtime +5 -name "${DATABASE}_*.sql.gz" -exec rm -f {} \;
chmod +x database_backup_shell.sh
输入如下命令:
crontab -e
在页面中编写如下内容:
00 3 * * * /root/database_backup_shell.sh
可实现每天凌晨三点自动执行第一步编写的脚本,备份mysql数据库到/backup/mysqldata,且只保留最近5天的数据库备份。
如果生效则可以在日志和数据库备份路径内看到新增的文件。有可能backup.sh没有权限在文件夹内新增文件,可为文件夹设置权限:
sudo chmod a+w test
有的时候不好使,请改变文件格式。https://www.cnblogs.com/zyb-pp/p/6429448.html