专栏首页Eternally运维Mysql备份脚本-Xtrabackup
原创

Mysql备份脚本-Xtrabackup

  • #!/bin/sh
  • #mysql_backup
  • begintime=`date +"%Y-%m-%d_%H-%M-%S"`
  • format_time=`date +"%Y-%m-%d_%H-%M-%S"`
  • tar_time=`date +%F --date="-1 day"`
  • currentHour=$(date +%H)
  • port=3306
  • backdir=/data/backup
  • tardir='/data/mysql_backup'
  • file_cnf=/etc/my.cnf
  • user_name=root
  • passwd='123456'
  • sock=/data/mysqldata/mysql.sock
  • out_log=$backdir/xtraback_log_$format_time
  • time_cost=$backdir/xtraback_time.txt
  • #判断数据备份的压缩目录是否存在
  • if [ ! -d "$tardir" ];then
  • mkdir -p $tardir
  • fi
  • #判断备份目录是否存在
  • if [ ! -d "$backdir" ]; then
  • mkdir -p $backdir
  • else
  • #判断昨日是否备份,有则打包压缩后删除之前备份的目录
  • if [ -d "$backdir/rec2" ];then
  • tar zcf ${tardir}/mysql_bckup_$tar_time.tar.gz -C $backdir .
  • sleep 3
  • rm -fr ${backdir}/*
  • fi
  • fi
  • #凌晨3时完全备份
  • if [ $currentHour -eq 03 ] && [ ! -d "$backdir/full" ];then
  • echo "#####start full backup at $begintime to directory full" >>$time_cost
  • /usr/bin/innobackupex --defaults-file=$file_cnf --no-lock --no-timestamp --user=$user_name --password=$passwd --port=$port --socket=$sock $backdir/full &> ${out_log}-full.log
  • sleep 3
  • #中午14时与晚上19时进行增量备份
  • elif [ $currentHour -eq 14 ] && [ ! -d "$backdir/rec1" ];then
  • echo "#####start 1 incremental backup at $begintime to directory rec1" >>$time_cost
  • /usr/bin/innobackupex --defaults-file=$file_cnf --no-lock --no-timestamp --user=$user_name --password=$passwd --port=$port --socket=$sock --incremental --incremental-basedir=$backdir/full $backdir/rec1 &> $out_log-rec1
  • sleep 3
  • elif [ $currentHour -eq 19 ] && [ ! -d "$backdir/rec2" ];then
  • echo "#####start 3 incremental backup at $begintime to directory rec2" >>$time_cost
  • /usr/bin/innobackupex --defaults-file=$file_cnf --no-lock --no-timestamp --user=$user_name --password=$passwd --port=$port --socket=$sock --incremental --incremental-basedir=$backdir/rec1 $backdir/rec2 &> $out_log-rec2
  • sleep 3
  • fi

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Mysql备份脚本-Xtrabackup

    小俊丶Eternally
  • FinalShell – SSH终端,同屏SFTP,同步目录切换一体化服务器管理

    简介 FinalShell是一体化的的服务器,网络管理软件,功能强大的开发,运维工具,充分满足开发,运维需求.

    小俊丶Eternally
  • MySQL—MHA高可用

    如果文章出现不完整,可以去我的个人博客查看,个人博客地址:https://blog.97hjh.cn

    小俊丶Eternally
  • Mysql备份脚本-Xtrabackup

    小俊丶Eternally
  • 时间衰减流的改进算法

    作者:Vladimir Braverman,Harry Lang,Enayat Ullah,Samson Zhou

    罗大琦
  • spark调优系列之内存和GC调优

    本文基于spark1.6讲解。 一,基本概述 调优内存的使用主要有三个方面的考虑:对象的内存占用量(你可能希望整个数据集都适合内存),访问这些数据的开销,垃圾...

    Spark学习技巧
  • 游戏化如何影响软件开发人员:来自GitHub上的一项准实验的警告证据(CS SE)

    我们研究了软件开发人员的行为如何发生变化,以响应从GitHub(一种用于协作编程和软件开发的在线平台)中删除游戏化元素的情况。我们发现,从用户界面(从用户配置文...

    刘子蔚
  • Oracle数据库易遗漏的知识点(二)

    我们区分in和exists主要是驱动顺序的改变(这是性能变化的关键),如果是exists,那么以外层表为驱动表,先被访问,如果是IN,那么先执行子查询,所以我们...

    提莫队长
  • 十分钟入门Nginx基本功能

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理。废话不多,直接开始。

    秃头哥编程
  • [转]Nginx基本功能极速入门

    本文主要介绍一些Nginx的最基本功能以及简单配置,但不包括Nginx的安装部署以及实现原理。废话不多,直接开始。

    Esofar

扫码关注云+社区

领取腾讯云代金券