Home >Database >Mysql Tutorial >基于Innobackupex的MySQL备份脚本

基于Innobackupex的MySQL备份脚本

WBOY
WBOYOriginal
2016-06-07 16:33:331276browse

Innobackupex是Xtrabackup的一部分,其实质也是调用xtrabackup。主要的不同是Xtrabackup除了支持innodb引擎外还支持xtradb引擎。

Innobackupex是Xtrabackup的一部分,其实质也是调用xtrabackup。主要的不同是Xtrabackup除了支持innodb引擎外还支持xtradb引擎。本文主要封装了Innobackupex到shell脚本进行定期备份,供大家参考。

1、脚本描述
a、支持增量备份以及全备
b、需要传递到备份脚本(如备份路径,连接相关参数等)
c、基于周日,周三的全量备份,其他增量备份
d、可根据需要调整脚本,,比如压缩备份的文件夹以及rsync等

2、脚本内容

################################################################################
# File    : innobk.sh                                                        #
# Author  : Leshami                                                          #   
# Blog    :                                       #
# Date    : 20141113                                                          #
# Description :                                                                #
#    The script will call innobackupex to                                      #
#    take a full or increment backup for mysql db.                            #
#    Currently it will take follow principal to backup:                        #
#      Sun,Wend take full backup.                                            # 
#      Mon,Tue,Thur,Fri,Sat take incremental backup.                          #
#                                                                              #
# Usage Example:                                                              #
#    innobk.sh --help|-?                                                      #
#    innobk.sh --backup-dir=/dbbak --defaults-file=/inst3606/my3606.cnf \    #
#                  --host=127.0.0.1 --port=3606 --user=xxx --password=xxx    #
#                                                                        #
################################################################################
# Change History:                                                              #
# --------------------------------------------------                          #   
# Init Development Leshami  2014-11-13                                    #
################################################################################

#!/bin/bash
#set -x

# Get the key value of input arguments format like '--args=value'.
function get_key_value()
{
    echo "$1" | sed 's/^--[a-zA-Z_-]*=//'
}

# Usage will be helpful when you need to input the valid arguments.
function usage()
{
cat Usage: $0 [configure-options]
  -?, --help                Show this help message.
  --backup-dir=          Set backup directory
  --defaults-file=[]        Set mysql configuration file directory
  --host=                Set mysql host
  --port=                Set mysql port
  --user=                Set mysql user name
  --password=            Set mysql user password
EOF
}

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn