innobackupex实现MySQL数据库的备份与恢复
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了innobackupex实现MySQL数据库的备份与恢复相关的知识,希望对你有一定的参考价值。
Xtrabackup是由percona开发的一个开源软件,它是innodb热备工具ibbackup(收费的商业软件)的一个开源替代品。Xtrabackup由个部分组成:xtrabackup和innobackupex,其中xtrabackup工具用于备份innodb和 xtraDB引擎的表;而innobackupex工具用于备份myisam和innodb引擎的表,本文将介绍如何用innobackupex工具做全量和增量备份。
一、安装
在安装Xtrabackup之前已经安装了mysql数据库,选用的Xtrabackup版本是2.2.9,如果想用其他的版本,请参考:https://www.percona.com/downloads/XtraBackup。
为了方便,直接使用yum进行安装:
二、数据库的全备与还原
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --port=3306 --socket=/u01/app/mysql/run/mysql.sock /u01/app/mysql/backup/
还原:
关闭数据库:
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --use-memory=100m --apply-log /u01/app/mysql/backup/2016-11-10_14-16-50
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --copy-back /u01/app/mysql/backup/2016-11-10_14-16-50
#应用binlog日志
[[email protected] 2016-11-10_14-16-50]# cat xtrabackup_binlog_info
mysql-bin.000012 311
mysqlbinglog /u01/app/mysql/log/mysql-bin.000012 --start-position=311 |mysql -u root -p***
修改权限
cd /u01/app/mysql/data
chown -R mysql:dba
启动数据库
/etc/init.d/mysql start
三、增量备份与还原
--增量备份
create table t_time(id int auto_increment primary key,t_time datetime);
insert into t_time(t_time) values(now());
--先做全备
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --port=3306 --socket=/u01/app/mysql/run/mysql.sock /u01/app/mysql/backup/
--再做增量备份
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --incremental-basedir=/u01/app/mysql/backup/2016-11-10_14-46-43 --incremental /u01/app/mysql/backup/
--增量恢复的步骤
innobackupex --apply-log --redo-only /u01/app/mysql/backup/2016-11-10_14-46-43
innobackupex --apply-log --redo-only /u01/app/mysql/backup/2016-11-10_14-46-43 --incremental-dir=/u01/app/mysql/backup/2016-11-10_14-49-09
--应用备份
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --use-memory=100m --apply-log /u01/app/mysql/backup/2016-11-10_14-46-43
innobackupex --defaults-file=/u01/app/mysql/my.cnf --user=root --password=*** --copy-back /u01/app/mysql/backup/2016-11-10_14-46-43
mysqlbinglog /u01/app/mysql/log/mysql-bin.000014 --start-position=482 |mysql -u root -p***
本文出自 “三国冷笑话” 博客,请务必保留此出处http://myhwj.blog.51cto.com/9763975/1872531
以上是关于innobackupex实现MySQL数据库的备份与恢复的主要内容,如果未能解决你的问题,请参考以下文章
通过innobackupex实现对MySQL的增量备份与还原
mysql之 innobackupex备份+binlog日志的完全恢复(命令行执行模式)
Mysql1.5(binlog增量备份与恢复,innobackupex)
innobackupex 备份数据搭建 MySQL Slave