简介c++
innobackupex是Percona提供能够在线进行InnoDB热备份和MyISAM备份工具sql
innobackupex对innodb的热备份是基于XtraBackup来实现,对于MyISAM引擎备份为全表备份且会产生表锁shell
官方地址:http://www.percona.com/software/percona-xtrabackup 工具
原理es5
XtraBackup基于InnoDB的crash-recovery功能。备份时工具会复制innodb的data file,因为不锁表,复制出来的数据是不一致的,在恢复的时候使用crash-recovery,使得数据恢复一致。spa
InnoDB维护了一个redo log,又称为transaction log,事务日志,它包含了innodb数据的全部改动状况。当InnoDB启动的时候,它会先去检查data file和transaction log,而且会作二步操做:XtraBackup在备份的时候,一页一页地复制innodb的数据,并且不锁定表,与此同时,XtraBackup还有另一个线程监视着transactions log,一旦log发生变化,就把变化过的log pages复制走。在prepare过程当中,XtraBackup使用复制到的transactions log对备份出来的innodb data file进行crash recovery。线程
安装日志
目前官方最新版本为XtraBackup percona-2.2.5code
相关依赖安装
yum -y install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr bison libtool ncurses5-devel libgcrypt libgcrypt-devel perl-Time-HiRes perl-DBD-MySQL
innobackupex安装
tar xvf percona-xtrabackup-2.2.5.tar.gz cd percona-xtrabackup-2.2.5 cmake -DBUILD_CONFIG=xtrabackup_release make -j4 make install ln -s /usr/local/xtrabackup/bin/* /bin
SQL备份用户受权
CREATE USER ’bkpuser’ @’localhost’ IDENTIFIED BY ’s3cret’ ; GRANT SHOW DATABASE, RELOAD, LOCK TABLES, REPLICATION CLIENT ON *. * TO ’bkpuser’ @’localhost’ ; FLUSH PRIVILEGES;
以上完成了innobackupex的安装