码迷,mamicode.com
首页 > 数据库 > 详细

innobackupex命令对mysql数据库进行完全和增量备份

时间:2015-09-24 19:46:54      阅读:279      评论:0      收藏:0      [点我收藏+]

标签:innobackupex命令对mysql数据库进行完全和增量备份

测试环境:

         OS: rhel5

         mysql : mysql-5.6.25-linux-glibc2.5-i686.tar.gz

         xtrabackup: percona-xtrabackup-2.2.10-1.el5.i386.rpm

         这里mysql的通用二进制包安装步骤省略~

         mysql的数据目录建立在一个逻辑卷上    /mydata/data

         mysql的数据备份目录  /backup


1.安装xtrabackup

   #rpm -ivh  percona-xtrabackup-2.2.10-1.el5.i386.rpm

2.建立原始数据

   #mysql

   mysql> create database student;

   mysql> use student;

   mysql> create table user(id tinyint primary key auto_increment not null,name  char(32) not null default ‘‘);

   mysql> desc user;

   mysql> insert into user(name)  values (‘luochen‘),(‘redhat‘);

   mysql> select * from user;        ###验证数据是否插入成功

3.完全备份

   #innobackupex --user=root  /backup      ##这里没有设定root密码

   #cd /backup/           ###查看是否有一个已当前时间生成的目录

PS: 如果不进行增量备份想还原完全备份使用下面命令

   #innobackupex  --apply-log    /backup/2015-09-24_10-27-04

   #innobackupex  --copy-back  /backup/2015-09-24_10-27-04

4.修改数据库表中的数据(模以真实的情况)

   #mysql

   mysql> insert into user(name)  values (‘zuowei‘),(‘zhangsan‘);

   mysql> select * from user;

5.进行第一次增量备份(在完全备份的基础上)

   #innobackupex --incremental /backup  --increment-basedir=/backup/2015-09-24_10-27-04

PS: 2015-09-24_10-27-04 为完全备份生成的目录

6.再次修改表中数据

   #mysql

   mysql> use student;

   mysql> delete from user where id in(2,3);

   mysql> insert into user(name) values (‘endtime‘);

   mysql> select * from user;

7.进行第二次增量备份

   #innobackupex   --incremental  /backup  --incremental-basedir=/backup/2015-09-24_10-28-43

PS: 2015-09-24_10-28-43 为第一次增量备份生成的目录

8.模以数据被破坏

   #service mysqld stop

   #rm -rf  /mydata/data/*

9.准备从完全备份和增量备份中恢复数据  

   #innobackupex --apply-log --redo-only  /backup/2015-09-24_10-27-04

   #innobackupex --apply-log --redo-only  /backup/2015-09-24_10-27-04  --incremental-dir=/backup/2015-09-24_10-28-43

    #innobackupex --apply-log --redo-only  /backup/2015-09-24_10-27-04  --incremental-dir=/backup/2015-09-24_10-30-37

10.恢复所有数据

    #innobackupex --copy-back  /backup/2015-09-24_10-27-04

11.改变数据目录文件的所属主组

    #cd /mydata/data

    #chown -R  mysql.mysql  ./*

12.验证数据是否恢复成功

    #mysql

    mysql> use student;

    mysql> select * from user;

PS: 

      2015-09-24_10-27-04    ###完全备份

      2015-09-24_10-28-43    ###第一次增量备份

      2015-09-24_10-30-37    ###第二次增量备份

本文出自 “珞辰的博客” 博客,请务必保留此出处http://luochen2015.blog.51cto.com/9772274/1697750

innobackupex命令对mysql数据库进行完全和增量备份

标签:innobackupex命令对mysql数据库进行完全和增量备份

原文地址:http://luochen2015.blog.51cto.com/9772274/1697750

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!