1、编写shell脚本db-backup.sh:
#!/bin/bash
BACKUP_DIR="/data/backup"
DB_NAME="数据库名称"
DB_USER="用户名"
DB_PASS="密码"
DATE=$(date +%Y%m%d_%H%M%S)
mkdir -p ${BACKUP_DIR}
/usr/bin/mysqldump --default-character-set=utf8mb4 -u ${DB_USER} -p${DB_PASS} ${DB_NAME} > ${BACKUP_DIR}/${DB_NAME}_${DATE}.sql
find ${BACKUP_DIR} -type f -name "*.sql" -mtime +7 -exec rm {}
2、给/data/backup和脚本赋予权限:
sudo chmod -R 777 db-backup.sh
3.创建crontab定时任务
* * * * * /bin/bash /data/db_backup.sh >> /var/log/db_backup.log 2>&1
4.重新启动crontab定时任务命令
sudo systemctl start crond.service;
5. 给/var/log/db_backup.log赋予写权限
sudo chmod 777 db_backup.log