项目集群搭建完成,数据库虽有做主从同步,但考虑到数据安全性,为了满足这个需求那么要每天对数据备份处理,

但每天手动进行备份处理太过于被动,而且白天用户访问,会有数据变化以及在备份时会影响服务器正常运行的性能,

所以考虑写一个脚本,并制定一个定时任务进行执行脚本备份数据;

#!/bin/bash
###数据库定时备份,并将备份的库进行打包压缩
user=root
passwd=123456
back_path=/vdb1/mysql/backup
data_name=zmq123
date=`date +%Y%m%d`

mkdir $back_path/$date
mysqldump -u $user -p$passwd $data_name |gzip > $back_path/$date/$data_name.sql.gz

#定时任务,计划在每天晚上23点55分进行数据备份
55 23   *  *  * . /vdb1/mysql/mysqldump.sh

当运行了一段时间后,发现备份的数据有些占磁盘空间的,而我要保存的只是最近一月的数据就可以了,所以将这个脚本进行升级,

在可能没有人注意的情况下,而磁盘不会被备份数据占满;

###升级版每天晚上11:55分进行定时备份,
#!/bin/bash
year=`date +%Y`
month=`date +%m`
day=`date +%d`
backpath=/vdb1/mysql/backup/$year$month/
user=root
passwd=123456
dataname=zmq123

[ -d $backpath ] || mkdir -p $backpath
rq=`date +%Y%m%d`
mysqldump -u $user -p$passwd $dataname|gzip >$backpath/$rq.sql.gz

#定时任务
分 时   日 月 周
55 23   *  *  * . /vdb1/mysql/mysqldump.sh

########每月2号晚上11:30进行定时删除上个月备份数据
#!/bin/bash
year=`date +%Y`
month=`date +%m`
month=`expr $month - 1`
 if [ $month -eq 0 ];then
    month=12
    day=31
    year=`expr $year - 1`
 fi

if [ $month -lt 10 ];then
    pre=0
 fi

backdir=/vdb1/mysql/backup/$year$pre$month
rm -rf $backdir                    #删除上一个月的数据
##定时任务
30 23  2 * * . /vdb1/mysql/delmysqlbak.sh

OK!编写完成,先运行段时间看下吧!有情况再进行改进;

Mysql定时备份数据脚本的更多相关文章

  1. mysql 定时备份bat脚本 ,方便小型服务简单快速备份mysql

    mysql定时备份bat脚本 echo 数据库为用户名为root 密码为root 数据库名为kdykt echo mysqldump 命令如果没有配置环境变量要在bin目录下执行 set " ...

  2. Centos7 mysqldump定时任务,对mysql定时备份数据

    vi mysqldump_bak.sh #!/bin/bash PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:~/ ...

  3. mysql定时备份shell脚本

    #!/bin/bash #每天早上4点, mysql备份数据 # backup.sh #crontab -e # * * * /home/erya/run/moniter/mysql_backup.s ...

  4. MySQL定时备份之使用Linux下的crontab定时备份实例

    这篇文章主要介绍了使用Linux下的crontab进行MySQL定时备份的例子,需要的朋友可以参考下   复制代码代码如下: ##################################### ...

  5. MySQL自动备份shell脚本

    在数据库的日常维护工作中,除了保证业务的正常运行以外,就是要对数据库进行备份,以免造成数据库的丢失,从而给企业带来重大经济损失.通常备份可以按照备份时数据库状态分为热备和冷备,按照备份数据库文件的大小 ...

  6. Linux下mysql定时备份及恢复

    备份 1.数据库定时备份工作脚本:(日期时间作为名称的压缩文件,解压开是sql脚本) /root/backup/script/backup_mysql.sh 2.备份输出路径: /root/backu ...

  7. MySQL定时备份(全量备份+增量备份)

    MySQL 定时备份 参考 zone7_ 的 实战-MySQL定时备份系列文章 参考 zmcyu 的 mysql数据库的完整备份.差异备份.增量备份 更多binlog的学习参考马丁传奇的 MySQL的 ...

  8. mysql定时备份任务

    简介 在生产环境上,为了避免数据的丢失,通常情况下都会定时的对数据库进行备份.而Linux的crontab指令则可以帮助我们实现对数据库定时进行备份.首先我们来简单了解crontab指令,如果你会了请 ...

  9. linux下mysql定时备份数据库

    linux下mysql定时备份数据库 (2010-10-21 12:40:17) 转载▼ 标签: 杂谈   一.用命令实现备份 首页进入mysql的bin目录 1.备份数据#mysqldump -uu ...

随机推荐

  1. go语言基础之goto的用法

    1.goto的用法 示例: package main //必须有一个main包 import "fmt" func main() { //break //break is not ...

  2. mongodb聚合管道用法

    基本用法 db.collection.aggregate( [ { <stage> }, ... ] ) stage如下 名称 描述 $addFields 将新的字段添加到文档中,输出的文 ...

  3. WinForm特效:同时让两个窗体有激活效果

    windows api,一个窗体激活的时候给另外一个发消息 using System; using System.Windows.Forms; using System.Runtime.Interop ...

  4. [JS Compose] 3. Use chain for composable error handling with nested Eithers (flatMap)

    We refactor a function that uses try/catch to a single composed expression using Either. We then int ...

  5. 使用ionic中的侧边栏以及angularjs中广播的使用

    接着之前的ionic的例子 查看例子:我的第一段ionic代码 demo3.html(黄底内容为增加或修改的内容) <!DOCTYPE html> <html ng-app=&quo ...

  6. Linux Samba安装与使用

    一 安装环境: 虚拟机:RedHat  5.4  192.168.75.128 主机环境:WIN7 32bit  192.168.75.1 网络连接方式:NAT 二 安装步骤: 说明: Ø  samb ...

  7. 算法笔记_128:完美洗牌算法(Java)

    目录 1 问题描述 2 解决方案 2.1位置置换算法 2.2 走环算法   1 问题描述 有一个长度为2n的数组{a1,a2,a3,...,an,b1,b2,b3,...,bn},希望排序后变成{a1 ...

  8. QtGui.QPixmap

    A QtGui.QPixmap is one of the widgets used to work with images. It is optimized for showing images o ...

  9. Jquery中对checkbox的各种“全选”或者“取消”功能实现(特别注意1.6+的一定不能使用attr来取属性了!用prop!)

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  10. 深入理解javascript闭包【整理】

    原文链接:http://www.cn-cuckoo.com/2007/08/01/understand-javascript-closures-72.html 英文原文:http://www.jibb ...