当前位置: 首页 > article >正文

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

添加成功界面

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


http://www.kler.cn/a/376926.html

相关文章:

  • Nacos概述与集群实战
  • 【MySQL 保姆级教学】用户管理和数据库权限(16)
  • 【马来西亚理工大学主办,ACM出版】2025年大数据、通信技术与计算机应用国际学术会议(BDCTA 2025)
  • mysql -> 达梦数据迁移(mbp大小写问题兼容)
  • 【漏洞工具】小米路由器任意文件读取漏洞python图形化框架利用工具(poc|exp)
  • Qt 5.14.2 学习记录 —— 오 信号与槽机制(2)
  • 基于matlab的线性卷积演示系统
  • 【计网】深入理解NAT机制,内网穿透与内网打洞,代理服务
  • 论文 | Legal Prompt Engineering for Multilingual Legal Judgement Prediction
  • 单片机原理与应用:连接数字世界的微型大脑
  • phcharm贪吃蛇小游戏后续一(代码1,2,3前文已发)
  • HTML 基础标签——多媒体标签<img>、<object> 与 <embed>
  • K8S nginx pod结合cronJob实现日志按天切割 —— 筑梦之路
  • C# 接口(Interface)
  • Vue梳理1——Vue2的安装
  • 【计算机网络安全】湖北大学-MAC泛洪攻击实验
  • vxe-table 表格中实现多行文本的编辑
  • 企业数据安全举报投诉如何有效处理?
  • 手机贴膜气泡识别组件定位图像分割系统:快速图像识别
  • 在ubuntu上安装最新版的clang
  • c++多线程处理数据
  • 【Grafana】Grafana 基础入门
  • 多线程环境下内存池的实现(C++)
  • SpringBoot+FileBeat+ELK8.x版本收集日志
  • npm入门教程10:npm生命周期钩子
  • Flutter 获取照片权限的时候是否要获取存储权限?