Xtrabackup(快速备份)安装及使用

简介:
Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写).
Xtrabackup有两个主要的工具:xtrabackup、innobackupex
(1)xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表
(2)innobackupex 则封装了xtrabackup,是一个脚本封装,所以能同时备份处理innodb和myisam,但在处理myisam时需要加一个读锁
(3)Xtrabackup 2.1.x版本的支持MySQL 5.5 and 5.6 servers,Xtrabackup 2.0.x版本的支持MySQL 5.0, 5.1, 5.5 and 5.6 servers

环境:CentOS release 6.4 percona-xtrabackup-2.0.8-587.tar.gz

1、下载
官网:http://www.percona.com
下载地址:http://www.percona.com/redir/downloads/XtraBackup/XtraBackup-2.0.8/binary/Linux/x86_64/percona-xtrabackup-2.0.8-587.tar.gz

2、确认服务器上已经安装MySQL

# mysql --version   
mysql Ver 14.14 Distrib 5.1.71, for redhat-linux-gnu (x86_64) using readline 5.1

3、安装xtrabackup

tar zxf percona-xtrabackup-2.0.8-587.tar.gz   
cd percona-xtrabackup-2.0.8   
cp bin/* /usr/bin

4、备份并打包压缩

innobackupex --user=test --password=123 --defaults-file=/etc/my.cnf --database=test123
 --stream=tar /data/backup/ 2>/data/backup/test123.log |gzip 1>/data/backup/test123.tar.gz

说明:
 --database=test123  单独对test123数据库做备份,若是不添加此参数那就是对全库做备份
 2>/data/backup/test123.log  输出信息写入日志中
 1>/data/backup/test123.tar.gz  打包压缩存储到该文件中

5、恢复数据

1) 先停止数据库:service mysqld stop
2) 解压 tar -izxvf test123.tar.gz -C /data/backup/db/   (没有db ,需要mkdir /data/backup/db/)
注意:这里tar解包必须使用-i参数,否则解压出来的文件只有一个backup-my.cnf
3) 恢复

innobackupex --user=root --password --defaults-file=/etc/my.cnf  --apply-log /data/backup/db/  
(--apply-log选项的命令是将备份文件中的日志应用到备份文件中的数据文件上)   
innobackupex --user=root --password --defaults-file=/etc/my.cnf  --copy-back /data/backup/db/
chown -R mysql.mysql /var/lib/mysql/  (授权mysql用户)

4) 重启数据库 service mysqld restart
5) 删除垃圾 cd /var/lib/mysql/  && rm xtrabackup*
进入数据库查看,一切OK~

你可能感兴趣的:(Xtrabackup(快速备份)安装及使用)