zoukankan      html  css  js  c++  java
  • mysql的备份脚本

    mysql的备份脚本

        脚本如下

        #!/bin/sh

        # mysql_backup.sh: backup mysql databases and keep newest 5 days backup.

        #

        # Last updated: 20 March 2006

        # ----------------------------------------------------------------------

        # This is a free shell script under GNU GPL version 2.0 or above

        # Copyright (C) 2006 Sam Tang

        # Feedback/comment/suggestions : http://www.real-blog.com/

        # ----------------------------------------------------------------------

        # your mysql login information

        # db_user is mysql username

        # db_passwd is mysql password

        # db_host is mysql host

        # -----------------------------

        db_user="root"

        db_passwd="password"

        db_host="localhost"

        # the directory for story your backup file.

        backup_dir="/home/mybackup"

        # date format for backup file (dd-mm-yyyy)

        time="$(date +"%d-%m-%Y")"

        # mysql, mysqldump and some other bins path

        MYSQL="/usr/local/mysql/bin/mysql"

        MYSQLDUMP="/usr/local/mysql/bin/mysqldump"

        MKDIR="/bin/mkdir"

        RM="/bin/rm"

        MV="/bin/mv"

        GZIP="/bin/gzip"

        # check the directory for store backup is writeable

        test ! -w $backup_dir && echo "Error: $backup_dir is un-writeable." && exit 0

        # the directory for story the newest backup

        test ! -d "$backup_dir/backup.0/" && $MKDIR "$backup_dir/backup.0/"

        # get all databases

        all_db="$($MYSQL -u $db_user -h $db_host -p$db_passwd -Bse show databases)"

        for db in $all_db

        do

        $MYSQLDUMP -u $db_user -h $db_host -p$db_passwd $db | $GZIP -9 > "$backup_dir/backup.0/$time.$db.gz"

        done

        # delete the oldest backup

        test -d "$backup_dir/backup.5/" && $RM -rf "$backup_dir/backup.5"

        # rotate backup directory

        for int in 4 3 2 1 0

        do

        if(test -d "$backup_dir"/backup."$int")

        then

        next_int=`expr $int + 1`

        $MV "$backup_dir"/backup."$int" "$backup_dir"/backup."$next_int"

        fi

        done

        exit 0;

        注意

        mysql是以mysql用户身份运行的,注意脚本中的备份是否有写权限

  • 相关阅读:
    Callable和Future 多线程
    【spring-boot】spring-boot 整合 ehcache 实现缓存机制
    java 设计模式http://www.runoob.com/design-pattern/design-pattern-tutorial.html
    DDD领域驱动设计(例子)
    js要怎么接收后端传的excel文件流?
    构建最小JDK Docker镜像 或者直接使用镜像:frolvlad/alpine-oraclejre8:slim
    JVM知识点总结
    DDD随笔-Axon
    HttpServletRequest  通用的post 请求
    List转数组
  • 原文地址:https://www.cnblogs.com/liuchuyu/p/7489510.html
Copyright © 2011-2022 走看看