1,xtrabackup简介
?
下载地址为:http://www.percona.com/downloads/XtraBackup/
Chorm浏览器下面,在“DOWNLOADPERCONA XTRABACKUP”下面,选择版本号以及os版本,有的浏览器打不开,可能会出现“No files found with current filters.”,那么就需要换个浏览器比如chrome就可以打开了,如下图1.png所示:

?
也可以直接在linux下面是用wget的方式下载:
?
先check下是否已经配置datadir,检查是否有mysql服务,有的话就在my.cnf配置文件里面设置datadir
[root@data01 ~]# more /etc/my.cnf |grepdatadir
[root@data01 ~]#
Ok,看到没有配置datadir,去my.cnf里面配置
vim my.cnf
datadir? ? ? ? = /home/data/mysql/data
再check下:
[root@data01 ~]# more /etc/my.cnf |grepdatadir
datadir? ? ? ? = /home/data/mysql/data
[root@data01 ~]#
[root@data01 ~]#
?
tar -xvfpercona-xtrabackup-2.2.9-5067-Linux-x86_64.tar.gz
?
cp./percona-xtrabackup-2.2.9-Linux-x86_64/bin/innobackupex /usr/bin/innobackupex
cp./percona-xtrabackup-2.2.9-Linux-x86_64/bin/xtrabackup /usr/bin/xtrabackup
cp./percona-xtrabackup-2.2.9-Linux-x86_64/bin/xbcrypt /usr/bin/xbcrypt
cp ./percona-xtrabackup-2.2.9-Linux-x86_64/bin/xbstream/usr/bin/xbstream
PS:新版本已经没有了innobackupex-1.5.1这个小插件了。
?
[root@data01 ~]# innobackupex --help |more
Options:
? ?--apply-log
? ? ? ?Prepare a backup in BACKUP-DIR by applying the transaction log file
? ? ? ?named "xtrabackup_logfile" located in the same directory.Also,
? ? ? ?create new transaction logs. The InnoDB configuration is read from
? ? ? ?the file "backup-my.cnf".
?
? ?--backup-locks
? ? ? ?This option controls if backup locks should be used instead of FLUSH
? ? ? ?TABLES WITH READ LOCK on the backup stage. The option has no effect
? ? ? ?when backup locks are not supported by the server. This option is
? ? ? ?enabled by default, disable with --no-backup-locks.
?
3.5 源码方式安装
参考:http://www.percona.com/doc/percona-xtrabackup/2.2/installation/compiling_xtrabackup.html
?
xtrabackup:支持innodb存储引擎表,xtradb存储引擎表
innobackupex:支持innodb存储引擎表、xtradb存储引擎表、myisam存储引擎表。
?
--defaults-file
同xtrabackup的--defaults-file参数
--apply-log
对xtrabackup的--prepare参数的封装
--copy-back
做数据恢复时将备份数据文件拷贝到MySQL服务器的datadir ;
--remote-host=HOSTNAME
通过ssh将备份数据存储到进程服务器上;
--stream=[tar]
备份文件输出格式, tar时使用tar4ibd , 该文件可在XtarBackup binary文件中获得.如果备份时有指定--stream=tar, 则tar4ibd文件所处目录一定要在$PATH中(因为使用的是tar4ibd去压缩, 在XtraBackup的binary包中可获得该文件)。
在使用参数stream=tar备份的时候,你的xtrabackup_logfile可能会临时放在/tmp目录下,如果你备份的时候并发写入较大的话 xtrabackup_logfile可能会很大(5G+),很可能会撑满你的/tmp目录,可以通过参数--tmpdir指定目录来解决这个问题。
--tmpdir=DIRECTORY
当有指定--remote-host or --stream时, 事务日志临时存储的目录, 默认采用MySQL配置文件中所指定的临时目录tmpdir
--redo-only--apply-log组,
强制备份日志时只redo ,跳过rollback。这在做增量备份时非常必要。
--use-memory=#
该参数在prepare的时候使用,控制prepare时innodb实例使用的内存量,用来取代my.cnf中的buffer_pool_size值,如果你是独立服务器,而且内存足够大的话,为了加快备份恢复的效率,你可以调大--use-memory这个参数值
--throttle=IOS
同xtrabackup的--throttle参数
--sleep=是给ibbackup使用的,指定每备份1M数据,过程停止拷贝多少毫秒,也是为了在备份时尽量减小对正常业务的影响,具体可以查看ibbackup的手册;
--compress[=LEVEL]
对备份数据迚行压缩,仅支持ibbackup,xtrabackup还没有实现;
--include=REGEXP
对 xtrabackup参数--tables的封装,也支持ibbackup。备份包含的库表,例如:--include="test.*",意思是要备份 test库中所有的表。如果需要全备份,则省略这个参数;如果需要备份test库下的2个表:test1和test2,则写成:--include="test.test1|test.test2"。也可以使用通配符,如:--include="test.test*"。
--databases=LIST
列出需要备份的databases,如果没有指定该参数,所有包含MyISAM和InnoDB表的database都会被备份;
--uncompress
解压备份的数据文件,支持ib