• centos7 自动定时备份mysql数据库


    shell脚本:mysqlbak.sh

    #!/bin/bash
    PATH=/bin:/sbin:/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin
    export PATH

    #备份的路径
    backupdir='/root/database_backup/ywapp2'

    #备份的时间
    time=`date +%Y%m%d_%H%M%S_%N`

    #判断前一天是否备份 有则清空备份 无则直接备份 

    #为了不占内存 备份过程中压缩文件
    files=`ls $backupdir`
    if [ -z "$files" ]; then
    mysqldump --opt -uroot -p'Nxy123yang' ywapp | gzip > $backupdir/ywapp_$time.sql.gz
    else

    #清空备份的文件
    find $backupdir -name "*.gz" -type f -exec rm -rf {} ; > /dev/null 2>&1
    mysqldump --opt -uroot -p'Nxy123yang' ywapp | gzip > $backupdir/ywapp_$time.sql.gz
    fi

    ------------------------

    备份好的文件格式:ywapp_20170424_203702_130408343.sql.gz

    借鉴:http://www.jb51.net/article/56553.htm 中if 写法

    http://www.cnblogs.com/platero/p/4021561.html 中判断文件和文件夹是否存在

    -----------------------------------

    myFolder=/home/test

    files=`ls $myFolder`
    if [ -z "$files" ]; then
         echo "Folder $myFolder is empty!"
    else
         echo "Folder $myFolder is not empty."
    fi
    -------------------------------
     判断文件目录是否为空

    http://blog.sina.com.cn/s/blog_439f80c40101fx5t.html

    http://bbs.chinaunix.net/thread-4145980-1-1.html

    可以参考另一种写法:

    http://www.centoscn.com/shell/2014/0821/3529.html

    七天清空一次备份数据

    find $backupdir-name "*.tar.bz2" -type f -mtime +7 -exec rm -rf {} ; > /dev/null 2>&1

    这篇文章可以 备份多个数据库 并压缩发送送到自己的邮箱。

    http://blog.csdn.net/painsonline/article/details/7717551

    这篇文章也不错

    http://www.centoscn.com/mysql/2016/0206/6737.html

  • 相关阅读:
    UML类图图示样例
    在WSSv3中通过Javascript和创建Feature扩展站点的动作菜单
    LINQ之Select各种操作
    TroubleShoot: SharePoint工作流不能自动启动
    TroubleShoot:页面上WebPart显示错误
    ECMAScript对列表项的增删改查
    隐藏SharePoint查看所有内容及回收站
    Windows2000计划任务对机器进行重新启动
    CF576E Painting Edges
    CF1491H Yuezheng Ling and Dynamic Tree
  • 原文地址:https://www.cnblogs.com/hanlong/p/6759027.html
Copyright © 2020-2023  润新知