1.创建存放备份sql的文件夹
随便找一目录创建
mkdir /data/mysqlbackup/
2.编写脚本
vim mysql.sh
写入以下内容:
#查找5天之前备份的.sql文件并删除(删除5天前的备份)
find /data/mysqlbackup/ -name "*.sql" -mtime +5 -exec rm -rf {} \;
#你的数据库密码
DB_USER="root" DB_PASS="123456"
#你要备份的数据库
DB_HOST="localhost" DB_NAME="test"
#你安装的数据库位置的(bin目录)
BIN_DIR="/usr/local/mysql-8.0/bin/"
#备份文件存放的位置
BCK_DIR="/data/mysqlbackup"
DATE=`date +%F`
#备份命令
$BIN_DIR/mysqldump --opt -u$DB_USER -p$DB_PASS -h$DB_HOST $DB_NAME > $BCK_DIR/$DB_NAME$DATE.sql
chmod +x mysql.sh
可以发现mysql.sh使没有执行权限的 ,所以要给这个脚本赋可执行权限。
可以先执行./mysql.sh 成功后设置每天自动备份
3.使上面脚本每天自动自行实现自动备份
输入命令
crontab -e
写入刚刚mysql.sh位置并每天一点备份一次
0 1 * * * /data/mysqlbackup/mysql.sh
设置每天几点备份自行百度