Mysql

关注公众号 jb51net

关闭
首页 > 数据库 > Mysql > Linux每日定时备份mysql数据

Linux系统每日定时备份mysql数据的方法步骤

作者:Hansel_Zhang

这篇文章主要介绍了Linux系统每日定时备份mysql数据的方法步骤,包括创建文件夹、编写脚本、设置定时任务和测试脚本,详细步骤涵盖从文件夹创建到脚本执行的全过程,帮助用户实现数据库的自动备份,需要的朋友可以参考下

一、创建存储脚本的文件夹

创建文件夹,我的脚本放在/root/dbback/mysql

mkdir ...
cd /root/dbback/mysql

二、编写脚本

vi backup_mysql.sh

复制脚本内容

DB_USER="填写用户名"
DB_PASSWORD="填写密码"
DB_NAME="数据库名称"  # 如果需要备份所有数据库,删除这一行
BACKUP_DIR="/dbback/mysql/backup"  # 备份文件存储的目录,可自定义
DATE=$(date +%F_%H-%M-%S)      # 备份文件的时间戳

# 创建备份目录(如果不存在)
mkdir -p "$BACKUP_DIR"

# 执行备份
if [ -z "$DB_NAME" ]; then
    # 备份所有数据库,此处配置mysqldump所在路径
    /usr/local/mysql/bin/mysqldump -u "$DB_USER" -p"$DB_PASSWORD" --all-databases | gzip > "$BACKUP_DIR/all_databases_$DATE.sql.gz"
else
    # 备份特定数据库,此处配置mysqldump所在路径
   /usr/local/mysql/bin/mysqldump -u "$DB_USER" -p"$DB_PASSWORD" "$DB_NAME" | gzip > "$BACKUP_DIR/$DB_NAME_$DATE.sql.gz"
fi

# 输出备份状态
if [ $? -eq 0 ]; then
    echo "备份成功: $BACKUP_DIR/${DB_NAME:-all_databases}_$DATE.sql.gz"
else
    echo "备份失败"
fi

三、设置定时任务执行脚本

设置定时指令

crontab -e

复制以下内容:按需调整,我设置的每日凌晨2点

0 2 * * * /bin/bash /root/dbback/mysql/backup_mysql.sh >> /root/dbback/mysql/backup.log 2>&1

四、查看是否添加成功

crontab -l

添加成功界面

五、自行设置表达式进行测试脚本是否正常执行即可

到此这篇关于Linux系统每日定时备份mysql数据的文章就介绍到这了,更多相关Linux每日定时备份mysql数据内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

您可能感兴趣的文章:
阅读全文