安装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..tar.gz
cd percona-xtrabackup-2.1.
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= /data/bak/

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

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

压缩备份:

innobackupex --user=databak --password= --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/--12_23--/

开始还原

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

重新赋权:

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=--incremental /data/bak/ --incremental-basedir=/data/bak/--12_23--

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

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

备份的时候提示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.
官方提示:增量备份仅针对innodb和xtradb引擎,myisam在运行增量备份时实际上是完全复制的全备份(全备会锁全库)。

数据库还原(测试):

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

准备还原:

innobackupex --apply-log --redo-only/data/bak/--12_16-- --ibbackup=xtrabackup

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

innobackupex --apply-log --redo-only/data/bak/--12_16-- --incremental-dir=/data/bak/--12_16--
innobackupex --apply-log --redo-only/data/bak/--12_16--/ --incremental-dir=/data/bak/--12_17--
innobackupex --apply-log /data/bak/--12_16--

还原数据库:

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

重新赋权:

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

启动mysql。

/etc/init.d/mysql start

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

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

patch: command not found
yum -y install patch xbcrypt_common.c::: error: gcrypt.h: Nosuch file or directory
yum -y install libgcrypt libgcrypt-devel

percona-xtrabackup安装及使用教程的更多相关文章

  1. Percona XtraBackup 安装介绍篇

    XtraBackup介绍 XtraBackup是Percona公司的开源项目,用以实现类似Innodb官方的热备份工具InnoDB Hot Backup的功能,它支持在线热备份(备份时不影响数据读写) ...

  2. Percona Xtrabackup 安装

    1.安装Percona Xtrabackup YUM Repository --安装repository [root@manager ~]# yum install https://www.perco ...

  3. Percona XtraBackup 完全及增量备份与恢复的方法

    安装及备份.恢复实现 安装:其最新版的软件可从 http://www.percona.com/software/percona-xtrabackup/ 获得.本文基于CentOS6.x的系统,因此,直 ...

  4. Percona XtraBackup 备份还原篇

    Percona XtraBackup 安装介绍篇已经对Percona XtraBackup的功能和安装做了比较详细的介绍,那么本篇我们直接进入主题,如何使用XtraBackup做备份.还原,下面主要介 ...

  5. 使用Percona Xtrabackup创建MySQL slave库

    一.使用Percona Xtrabackup创建MySQL slave库 MySQL Server 版本: Server version: 5.7.10-log MySQL Community Ser ...

  6. Percona XtraBackup 8.0, 安装与测试

    Percona XtraBackup 8.0 是Percona XtraBackup新推出了一个针对MySQL8.0的版本,主要是MySQL8.0在Redo 和 数据库字典方面有了新的改进. Xtra ...

  7. 安装 Percona XtraBackup 2.3

    Installing Percona XtraBackup from Percona yum repository Install the Percona repository You can ins ...

  8. Percona XtraBackup User Manual 阅读笔记

    XtraBackup XtraBackup 2 安装XtraBackup 2.1 安装XtraBackup binary版本 2.1.1 yum的安装方法: 2.1.2 直接下载rpm包安装 3 Xt ...

  9. Percona XtraBackup 备份原理说明【转】

    本文来自:http://mysql.taobao.org/monthly/2016/03/07/ 前言 Percona XtraBackup(简称PXB)是 Percona 公司开发的一个用于 MyS ...

  10. Xtrabackup 安装使用

    一 简介:      Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写),是商业备份工具InnoDB Hotbackup的一个很好的替代品.它能对Inno ...

随机推荐

  1. HTTP层 —— CSRF保护

    简介 跨站请求伪造是一种通过伪装授权用户的请求来利用授信网站的恶意漏洞.Laravel 使得防止应用遭到跨站请求伪造攻击变得简单. Laravel 自动为每一个被应用管理的有效用户会话生成一个 CSR ...

  2. 理解JavaScript闭包

    什么是闭包 闭包是指有权访问另一个函数作用域中的变量的函数(有点拗口吧),简单点就是在一个函数的内部创建另外一个函数,并返回这个函数的引用.(这也是创建闭包的常用方式) function outerF ...

  3. JavaScript 数组方法总结

    最近公司没项目.所以所幸学学JS.毕竟很多人和我一样.属于培训机构出来的.JS基础也很差. 面试的时候面试官问你 .你会JS不.你会毫不犹豫的回答会.因为你确实用过.但是真正会的或许只是以前项目中需要 ...

  4. ASP生成静态文件编码为UTF-8格式的HTML文件

    一般在ASP环境下,运行动生静操作时都用到的是FSO,FSO是专门对文件进行操作的一个组件,FSO的编码属性只有三种,系统默认,Unicode,ASCII,并没有utf-8,所以一般中文系统上使用FS ...

  5. 一步一步创建一个简单的Package(1)

    创建Package之前首先我们理解需求: 数据源是一组历史货币数据包含在平面文件SampleCurrencyData.txt中,源数据中有四列. 下面是SampleCurrencyData.txt文件 ...

  6. 第21条:理解Objective-C错误模型

    首先要注意的是: “自动引用计数”(Automatic Reference Counting, ARC,参见第30条)在默认情况下不是“异常安全的”(exception safe).具体来说,这意味着 ...

  7. IOS 高级开发 KVC(二)

    前一篇博客最后介绍了KVC 再json 转模型时遇到一些问题.今天接着来介绍KVC 的其他用法.其实我们在一开始的时候就一直再强调命名的重要性.命名规范是KVC 存活的基础.如果没有这个条件支撑,那么 ...

  8. Java线程练习

    /*线程练习创建两个线程,与主线程交替运行 */ class Text extends Thread{    private String name;    Text(String name)     ...

  9. php设计模式-------(1)策略模式

    一.为什么我要学习设计模式. 我的上一个项目是做App接口,由于时间紧,老板催的急,所以到最后项目完工时发现居然写了几万行代码,可想而知代码质量有多糟糕.而且很多时候,调用接口的开发人员来找我说某个接 ...

  10. php socket connect permission denied

    Linux在php socket连接时报错:permission denied 解决办法: # setsebool httpd_can_network_connect=1 参考来源: http://w ...