zoukankan      html  css  js  c++  java
  • percona-xtrabackup安装及使用教程

    安装percona-xtrabackup依赖包(前提已安装mysql)

    yum -y install perl-CPAN perl-DBD-MySQL perl make gcc gcc-c++ patch libgcrypt libgcrypt-devel libaio libaio-devel automake autoconf bzr bison libtool ncurses5-devel zlib zlib-devel

    安装Time::HiRes依赖包(不停的yes即可,其中会有warning,忽略即可)

    perl -MCPAN -e 'install "Time::HiRes"'
    tar -zvxf percona-xtrabackup-2.1.5.tar.gz
    cd percona-xtrabackup-2.1.5
    AUTO_DOWNLOAD="yes" ./utils/build.sh innodb51 (mysql5.1版本)

    AUTO_DOWNLOAD="yes" ./utils/build.sh innodb55 (mysql5.5版本)
    复制相应文件至/usr/bin目录

    Mysql5.1

    cp innobackupex /usr/bin/
    cp src/xbcrypt /usr/bin/
    cp src/xbstream /usr/bin/
    cp src/xtrabackup_plugin /usr/bin/
    cp src/xtrabackup_plugin /usr/bin/xtrabackup

    Mysql5.5

    cp innobackupex /usr/bin/
    cp src/xbcrypt /usr/bin/
    cp src/xbstream /usr/bin/
    cp src/xtrabackup_innodb55 /usr/bin/
    cp src/xtrabackup_innodb55 /usr/bin/xtrabackup
    cp src/xtrabackup_innodb55 /usr/bin/xtrabackup55
    cp src/xtrabackup_innodb55 /usr/bin/xtrabackup_55

    5.5版本备份全库

    innobackupex --user=root --password=123456 /data/bak/

    5.1版本备份全库(5.1版本需添加--ibbackup=xtrabackup 参数,否则备份会报错

    innobackupex --user=root --password=123456 --ibbackup=xtrabackup /data/mysqlbak/

    压缩备份:

    innobackupex --user=databak --password=123456 --ibbackup=xtrabackup --stream=tar /data/bak/ | gzip1 >/data/bak/a.tar.gz

    还原全库
    准备还原

    innobackupex --user=root --password --defaults-file=/etc/my.cnf --apply-log /data/bak/2013-11-12_23-44-45/

    开始还原

    innobackupex --user=root --password --defaults-file=/etc/my.cnf --copy-back /data/bak/2013-11-12_23-44-45/

    重新赋权:

    chown -R mysql:mysql /var/lib/mysql

    启动mysql

    /etc/init.d/mysql start

    增量备份:

     基于目录的增备:
    /data/bak/2013-11-12_23-44-45(全备目录)

    innobackupex --user=root --password=123456--incremental /data/bak/ --incremental-basedir=/data/bak/2013-11-12_23-44-45

    基于lns的增备(方法与基于目录的增备相同):
    Lsn的值参照如下图所示:

    innobackupex --user=root --password=123456 --incremental /data/bak/ --incremental-lsn=722499939

    备份的时候提示Warning
    This procedure only affects XtraDB orInnoDB-based tables. Other tables with a different storage engine, e.g. MyISAM,will be copied entirely each time an incremental backup is performed.
    官方提示:增量备份仅针对innodbxtradb引擎,myisam在运行增量备份时实际上是完全复制的全备份(全备会锁全库)。

    数据库还原(测试)

    /etc/init.d/mysql stop;
    mv  /var/lib/mysql /var/lib/mysqlbak(一般情况下,不要让rm成为习惯,习惯mv可以尽量避免误删操作)

    准备还原:

    innobackupex --apply-log --redo-only/data/bak/2013-11-12_16-49-05 --ibbackup=xtrabackup

    将增量备份内容添加进全备份中

    innobackupex --apply-log --redo-only/data/bak/2013-11-12_16-49-05 --incremental-dir=/data/bak/2013-11-12_16-59-42
    innobackupex --apply-log --redo-only/data/bak/2013-11-12_16-49-05/ --incremental-dir=/data/bak/2013-11-12_17-01-11
    innobackupex --apply-log /data/bak/2013-11-12_16-49-05

    还原数据库:

    mkdir /var/lib/mysql (2.1.5的版本不需要新建mysql目录,2.1.8开始要自己新建一个目录,否则会报错)
    innobackupex --copy-back /data/bak/2013-11-12_16-49-05

    重新赋权:

    chown -R mysql:mysql /var/lib/mysql

    启动mysql

    /etc/init.d/mysql start

    Xtrabackup中的xtrabackup_binlog_info中记录了bin_logpos的点,通过该值可实现主从。(用这种方式,对中小系统重做主从会非常方便,备份速度快,还原速度也快)

    1.部署过程遇到的错误记录

    patch: command not found
    yum -y install patch
    
    xbcrypt_common.c:24:20: error: gcrypt.h: Nosuch file or directory
    yum -y install libgcrypt libgcrypt-devel
  • 相关阅读:
    手机号码正则表达式
    POJ 3233 Matrix Power Series 矩阵快速幂
    UVA 11468
    UVA 1449
    HDU 2896 病毒侵袭 AC自动机
    HDU 3065 病毒侵袭持续中 AC自动机
    HDU 2222 Keywords Search AC自动机
    POJ 3461 Oulipo KMP模板题
    POJ 1226 Substrings KMP
    UVA 1455 Kingdom 线段树+并查集
  • 原文地址:https://www.cnblogs.com/longshiyVip/p/5128099.html
Copyright © 2011-2022 走看看