Centos实现快速定时备份MySQL数据库,Linux备份MySQL数据库方法,本文以centos7为例,步骤如下:
1、新建backup目录,在目录下创建备份脚本bakup_script.sh,并创建directory文件夹用于存放备份的数据库文件
#!/bin/bash
# MySQL数据库信息
DB_USER="root"
DB_PASSWORD="root"
DB_NAME="mydb"
# 备份文件存放目录
BACKUP_DIR="/backup/directory"
# MySQL和其他命令路径(如果不在默认路径中)
MYSQL=/usr/local/mysql
MYSQLDUMP=/usr/local/mysql/bin/mysqldump
MKDIR=/usr/bin/mkdir
RM=/usr/bin/rm
FIND=/usr/bin/find
# 备份文件名中添加时间戳
NOW=$(date +"%Y-%m-%d-%H-%M-%S")
FILE="$BACKUP_DIR/$DB_NAME-$NOW.sql"
# 创建备份文件目录
$MKDIR -p $BACKUP_DIR
# 使用mysqldump备份数据库
$MYSQLDUMP -u $DB_USER -p$DB_PASSWORD --quick $DB_NAME > $FILE
# 检查备份是否成功
if [ $? -eq 0 ]; then
echo "MySQL backup successful to $FILE"
else
echo "MySQL backup failed"
fi
# 可选:保留最近几个备份文件(假设只保留最近5个)
$FIND $BACKUP_DIR -name "$DB_NAME-*.sql" -type f -mtime +5 -exec $RM -f {} \;
# 结束脚本
exit 0这里设置了备份文件保留时间,可根据自己的实际情况,对其进行设置。
2、通过 chmod 命令添加执行权限:
chmod +x /home/backup/backup_script.sh
3、安装crond服务
yum install crontabs
服务操作说明:
/sbin/service crond start //启动服务 /sbin/service crond stop //关闭服务 /sbin/service crond restart //重启服务 /sbin/service crond reload //重新载入配置
查看crontab服务状态:
service crond status
手动启动crontab服务:
service crond start
查看crontab服务是否已设置为开机启动,执行命令:
ntsysv
加入开机自动启动:
chkconfig –level 35 crond on
3、加入定时任务
crontab -e
设置定时执行执行:这里设置成每天凌晨0点执行备份操作
0 0 * * * /home/bakup_script.sh >/dev/null 2>&1
说明:这样就完成了MySQL数据库的定时备份,并生成sql文件,后续可以通过sql文件进行还原备份。需要注意的是.sh脚本要赋予可自行权限。
关于简忆
简忆诞生的故事



粤ICP备16092285号
文章评论(0)