使用Xtrabackup在线备份及恢复MySQL
Xtrabackup是由percona开发的一个开源软件,它是innodb热备工具ibbackup(收费的商业软件)的一个开源替代品 。Xtrabackup由个部分组成:xtrabackup和innobackupex,其中xtrabackup工具用于备份innodb和 xtraDB引擎的表;而 innobackupex工具用于备份myisam和innodb引擎的表,本文将介绍如何用innobackupex工具做全量和增量备份。
官网:http://www.percona.com/docs/wiki/percona-xtrabackup:start 安装 声明:以下操作最好以mysql用户执行。 首先,通过wget下载源码tar包: wget http://www.percona.com/redir/downloads/XtraBackup/LATEST/source/percona-xtrabackup-2.1.5.tar.gz 安装依赖包: yum install cmake gcc gcc-c++ libaio libaio-devel automake autoconf bzr bison libtool ncurses-devel zlib-devel 解压缩tar: tar -zxvf percona-xtrabackup-2.1.5.tar.gz cd percona-xtrabackup-2.1.5 utils/build.sh脚本会根据指定的引擎版本,自动解压缩适当的MySQL源码包并进行编译,这是最简单的安装方式。 当你在命令行下不带任何参数执行该脚本时,出现如下提示: [mysql@epay100 ~/software/percona-xtrabackup-2.1.5 ]$ ./utils/build.sh Build an xtrabackup binary against the specified InnoDB flavor. Usage: build.sh CODEBASE where CODEBASE can be one of the following values or aliases: innodb51 | plugin build against InnoDB plugin in MySQL 5.1 innodb55 | 5.5 build against InnoDB in MySQL 5.5 innodb56 | 5.6,xtradb56, build against InnoDB in MySQL 5.6 | mariadb100 xtradb51 | xtradb,mariadb51 build against Percona Server with XtraDB 5.1 | mariadb52,mariadb53 xtradb55 | galera55,mariadb55 build against Percona Server with XtraDB 5.5 根据上面提示和你使用的存储引擎及版本,选择相应的参数即可。因为我用的是MySQL 5.6,所以执行如下语句安装 : ./utils/build.sh innodb56 以上语句执行成功后,表示安装完成。最后,把生成的二进制文件拷贝到一个自定义目录下(本例中 为/home/mysql/admin/bin/percona-xtrabackup-2.1.5),并把该目录放到环境变量PATH中。 cp ./innobackupex /home/mysql/admin/bin/percona-xtrabackup-2.1.5 cp ./src/xtrabackup_56 ./src/xbstream /home/mysql/admin/bin/percona-xtrabackup-2.1.5 全备及其恢复 全备: 执行如下语句进行全备: innobackupex --defaults-file=/opt/mysql/my.cnf --user=root --password=*** /backup/mysql/data 该语句将拷贝数据文件(由my.cnf里的变量datadir指定)至备份目录下(/backup/mysql/data),注意:如果不指 定--defaults-file,默认值为/etc/my.cnf。 备份成功后,将在备份目录下创建一个时间戳目录(本例创建的目录为/backup/mysql/data/2013-10-29_09-05-25) ,在该目录下存放备份文件。 (编辑:滁州站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |