• Percona Xtrabackup备份mysql大数据库(完整备份与增量备份)


    Percona Xtrabackup备份mysql大数据库(完整备份与增量备份)

     
     

    Xtrabackup简介

    Percona XtraBackup是开源免费的MySQL数据库热备份软件,它能对InnoDB和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁)。XtraBackup支持所有的Percona Server、MySQL、MariaDB和Drizzle。

    XtraBackup优势 :
    1、无需停止数据库进行InnoDB热备
    2、增量备份MySQL
    3、流压缩到传输到其它服务器
    4、能比较容易地创建主从同步
    5、备份MySQL时不会增大服务器负载

    Xtrabackup安装

    这里只介绍Ubuntu-12.04下的安装方法,其它系统的安装方法请参考http://www.percona.com/doc/percona-xtrabackup/2.1/installation.html

    1. apt-key adv --keyserver keys.gnupg.net --recv-keys 1C4CBDCDCD2EFD2A

    在/etc/apt/sources.list加入:

    1. deb http://repo.percona.com/apt precise main
    2. deb-src http://repo.percona.com/apt precise main

    执行update及安装操作

    1. apt-get update
    2. apt-get install percona-xtrabackup

    注:precise是Ubuntu-12.04的版本代号,如果是其它系统版本,需要更换。

    Xtrabackup工具介绍

    安装XtraBackup后,其实会有几个工具:
    innobackupex:
    这个是其实是下面三个工具的一个perl脚本封装,可以备份MyISAM, InnoDB, XtraDB表。
    xtrabackup:
    一个由C编译而来的二进制文件,只能备份InnoDB和XtraDB数据。
    xbcrypt:
    用来加密或解密备份的数据。
    xbstream:
    用来解压或压缩xbstream格式的压缩文件。
    建议使用perl封装的innobackupex来作数据库备份,因为比较容易使用。所以下面只介绍innobackupex的使用。其它的使用参考:http://www.percona.com/doc/percona-xtrabackup/2.1/manual.html

    innobackupex使用方法

    完整的选项使用请执行innobackupex --help,这里只介绍使用常用的选项进行完整备份及增量备份和还原。

    完整备份及还原

    假如我们要备份centos和mysql数据库。
    备份:

    1. innobackupex --user=root --password=root --defaults-file=/etc/mysql/my.cnf --include="centos.*|mysql.*"    /data/mysql_backup

    这样就会在/data/mysql_backup生成一个带时间的目录,如果不需要带时间,可以使用选项--no-timestamp。
    如果想备份成压缩文件,可以使用如下语句:

    1. innobackupex --user=root --password=root --defaults-file=/etc/mysql/my.cnf --include="centos.*|mysql.*" --no-timestamp --stream=tar ./ | gzip - > www.centos.bz.tar.gz

    还原:
    假如完整备份的路径为/data/mysql_backup/full_backup,如果完整备份是压缩文件,需要先解压再还原。

    1. innobackupex --apply-log  /data/mysql_backup/centos_full_backup
    2. innobackupex --copy-back --defaults-file=/etc/mysql/my.cnf /data/mysql_backup/centos_full_backup
    3. chown -R mysql:mysql /var/lib/mysql

    增量备份及还原

    增量备份是建立在完整备份的基础上的,所以首先确保已经完整备份了一次。
    完整备份:

    1. innobackupex --user=root --password=root --include="centos.*"  --no-timestamp /data/mysql_backup/centos_full_backup

    现在完整备份的目录为/data/mysql_backup/centos_full_backup。
    增量备份:
    第一次增量备份:

    1. innobackupex --incremental /data/mysql_backup/inc/20130906 --no-timestamp --incremental-basedir=/data/mysql_backup/centos_full_backup --user=root --password=root --defaults-file=/etc/mysql/my.cnf

    第二次增量备份:

    1. innobackupex --incremental /data/mysql_backup/inc/20130907 --no-timestamp --incremental-basedir=/data/mysql_backup/inc/20130906 --user=root --password=root --defaults-file=/etc/mysql/my.cnf

    选项--incremental是指定作增量备份 --incremental-basedir选项是指定上一次增量备份的目录(如果是第一次作增量备份,则为完整备份的目录)。
    还原:
    增量备份的还原操作跟完整的还原有点不一样,首先必须使用--apply-log --redo-only对完整备份的目录及所有增量备份目录进行操作,然后就可以像还原完整备份时的操作了。
    对每个备份目录作apply-log redo-only操作(包括完整备份)

    1. innobackupex --apply-log --redo-only /data/mysql_backup/centos_full_backup  --user=root --password=root
    2. innobackupex --apply-log --redo-only /data/mysql_backup/centos_full_backup  --incremental-dir=/data/mysql_backup/inc/20130906 --user=root --password=root
    3. innobackupex --apply-log --redo-only /data/mysql_backup/centos_full_backup  --incremental-dir=/data/mysql_backup/inc/20130907 --user=root --password=root

    下面就跟还原完整备份时一样了:

    1. innobackupex-1.5.1 --apply-log /data/mysql_backup/centos_full_backup --use-memory=1G --user=root --password=root
    2. innobackupex --copy-back --defaults-file=/etc/mysql/my.cnf /data/mysql_backup/centos_full_backup
     

    转载请标明文章来源:《https://www.centos.bz/2013/09/percona-xtrabackup-mysql-backup/

  • 相关阅读:
    invalid expression: missing ) after argument list in xxx 或者 console.error(("[Vue warn]: " + msg + trace));
    js的alert()
    第9节列表渲染
    第8节条件渲染
    第7节class与style绑定
    CF1215D Ticket Game 博弈论
    CF833A The Meaningless Game 思维
    蚯蚓 队列
    洛谷P2566[SCOI2009]围豆豆
    ants 思维
  • 原文地址:https://www.cnblogs.com/L-H-R-X-hehe/p/3955035.html
Copyright © 2020-2023  润新知