RHEL7.4 MySQL5.7自动备份脚本
数据库4年前 (2019-07-08)
创建MySQL自动备份脚本,设置定时任务每天凌晨4点开始备份
#!/bin/sh DATABASE_Name=zabbix # current running shell path BASEPATH=$(cd `dirname $0`; pwd) DATABASE_BACKUP_PATH=$BASEPATH/MYSQLDBBackup echo "Begin backup $DATABASE_Name database..." if [ ! -d $DATABASE_BACKUP_PATH ];then mkdir -p $DATABASE_BACKUP_PATH fi # begin to backup database /usr/bin/mysqldump -Y -F -E -x -l -u root -pzv0s.cN!@ --default-character-set=utf8mb4 --add-drop-database --add-drop-table --add-locks --add-drop-trigger -B $DATABASE_Name > $DATABASE_BACKUP_PATH/mysqlbackup-`date +%Y-%m-%d-%H%M%S`.sql if [ 0 -eq $? ];then echo $(date +"%Y-%m-%d %H:%M:%S") "$DATABASE_Name Database backup success!" >> /root/DBBackLog.log else echo $(date +"%Y-%m-%d %H:%M:%S") "$DATABASE_Name Database backup error!" >> /root/DBBackLog.log exit fi # Delete beyond 15 days backup sql files find $DATABASE_BACKUP_PATH/ -mtime +15 -name "*.sql" -exec rm -rf {} \; echo "Backup $DATABASE_Name database finished!"
上传入/root目录中
chmod +x mysql_autobackup.sh
设置
DATABASE_Name=需要备份的数据库名 /usr/bin/mysqldump -Y -F -E -x -l -u root -p数据库密码
设置定时任务
crontab -e 添加 0 4 * * * /root/mysql_autobackup.sh > /dev/null 2>&1
https://crontab.guru/ 可以设置Cron的时间
crontab -l systemctl restart crond
本站所有文章均可随意转载,转载时请保留原文链接及作者。