定时备份mysql数据(物理备份)

 

一、备份

  1、安装xz压缩格式工具
    释义:相比较Linux自带的tar工具,xz压缩率较大,节省空间。第一次需要先安装
    安装:yum install xz -y

  2、备份命令
    释义:这里采用冷备份,即把mysql数据目录的所有文件打包到指定目录
    命令:tar Jcvf path_1 path_2 (path1是备份目录 path2是mysql文件目录)

  3、脚本
    # 数据库定时备份 脚本
    MYSQL_PATH=/mnt/sdc/files/mysql/data/
    BACKUP_PATH=/opt/mysql-backup
    DATETIME=$(date +%Y-%m-%d-%H-%M-%S)
    # echo "date=$DATETIME"

    echo "========备份开始========="
    echo "========备份路径=$BACKUP_PATH/mysql-$DATETIME.tar.xz==========="

    # 执行备份命令
    tar Jcvf $BACKUP_PATH/mysql-$DATETIME.tar.xz $MYSQL_PATH

    echo "==========备份完成==========="

    # 找7天前文件,并删除
    find $BACKUP_PATH -mtime +7 -name "*.tar.xz" -exec rm -rf {} \;

    # 输出备份结束信息
    echo "==========备份成功==========="

  4、将脚本添加到系统定时任务
    a、定时任务用法:

      crontab 【选项】
      -e:编辑crontab定时任务
      -l:查询crontab任务
      -f:删除当前用户所有的crontab任务
      -r:终止任务调度
      service crond restart:重启任务调度
  b、步骤
    编辑:crontab -e
    添加定时任务:1 1 * * * /root/mysql-backup/mysql-backup.sh #脚本保存的路径

           注:1 1 * * *  分别是  分钟  小时  天(1~31) 月(1~12) 星期(1~7)
    重启:service crond restart
    查看:crontab -l


二、还原

  1、命令
    tar Jxvf path1 path2 ( path1是备份文件目录 path2是要还原的目录 )

    如:tar Jxvf /opt/mysql-backup/mysql-2020-04-15-13-14-24.tar.xz /mnt/sdc/files/mysql/data/

 

posted @   shog808  阅读(295)  评论(0编辑  收藏  举报
编辑推荐:
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· 阿里巴巴 QwQ-32B真的超越了 DeepSeek R-1吗?
· 【译】Visual Studio 中新的强大生产力特性
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 【设计模式】告别冗长if-else语句:使用策略模式优化代码结构
点击右上角即可分享
微信分享提示