/usr/bin/innobackupex  # 备份innodb存储引擎的数据
 
/usr/bin/xbcrypt
 
/usr/bin/xbstream
 
/usr/bin/xtrabackup    # 也可以直接使用xtrabackup进行备份
 
  • 开始完全备份

    • innobackupex --user=root --password=123456 /backup

      • 其中/backup为新建的备份文件保存的目录
  • 在另一台主机上开始导入 
    • 在/etc/my.cnf中加入innodb-file-per-table = ON
    • 由于备份文件需要进行重新整合,因此,在备份主机上也要安装percona-xtrabackup 
      • 1:下载xtrabackup的RPM包
      • 2:yum install -y percona-xtrabackup
  • 将备份文件拷贝到备份服务器上 
    • scp -pr /backup/2017-08-30_21-55-01 192.168.23.32:/root/
  • 在备份主机上将备份文件重新整理, 将已经提交的事务进行执行,未提交的事务进行回滚,并且 
    • systemctl stop mariadb.service
    • innobackupex --apply-log /root/2017-08-30_21-55-01 首先整理事务
    • innobackupex --copy-back /root/2017-08-30_21-55-01
    • chown -R mysql.mysql /data/
    • 如果无法启动,需要将/data/mysql/lb_logfile* 删除,因为这个文件变大了
  • 开始增量备份 
    • 在主服务器上先创建新表
    • innobackupex --user=root --password=123456 --incremental /backup/ --incremental-basedir=/backup/2017-08-30_21-55-01
    • innobackupex --apply-log --redo-only /backup/2017-08-24_23-16-04/ :整理完全备份
    • innobackupex --apply-log --redo-only /backup/2017-08-24_23-16-04/ --incremental-dir=/backup/2017-08-24_23-16-04/ :将增量备份合并到完全备份上
    • innobackupex --copy-back /root/2017-08-24_23-16-04
    • 同样也要修改属组和属主
  • 完全备份过程演示
1:在配置文件里面,设置主服务器和备份服务器的数据目录为/data/mysql, 二进制目录为/data/binlog
 
datadir=/data/mysql
 
log_bin=/data/binlog/mysql-bin
 
innodb_file_per_table=on
 
 
2:在主服务器里面创建数据库,创建表,插入数据,使用innobackupex进行完全备份
 
innobackupex --user=root --password=123456 /backup
 
 
3:将完全备份拷贝到备份服务器
 
scp -pr /backup/2017-08-30_21-55-01 192.168.23.32:/root/
 
 
4:在备份服务器停止Mariadb,先整理完全备份的事务
 
innobackupex --apply-log /root/2017-08-30_21-55-01
 
 
5:再导入数据,此时会在备份服务器上创建数据目录为/data/mysql, 二进制目录为/data/binlog
 
innobackupex --copy-back /root/2017-08-30_21-55-01
 
 
6:最后将备份服务器的数据目录的属主和属组修改为mysql
 
chown -R mysql.mysql /data/
 
 
7:在备份服务器启动Mariadb,检查是否备份完毕
 
systemctl start mariadb.service
 
  • 增量备份过程演示
1:完全备份之后,我们再来增量备份,现在主服务器上创建其他的数据库,和表,已经插入数据
 
 
2:基于刚刚创建的完全备份,再创建增量备份
 
innobackupex --user=root --password=123456 --incremental /backup/ --incremental-basedir=/backup/2017-08-30_21-55-01
 
 
3:再整理完全备份
 
innobackupex --apply-log --redo-only /backup/2017-08-30_21-55-01
 
 
4:将增量备份合并到完全备份
 
innobackupex --apply-log --redo-only /backup/2017-08-30_21-55-01 --incremental-dir=/backup/2017-08-30_23-16-04
 
 
5:将完全备份拷贝到备份服务器,这会覆盖之前备份服务器上的完全备份
 
scp -pr /backup/2017-08-30_21-55-01 192.168.23.32:/root/
 
 
6:将备份服务器停止,在备份服务器上还原数据
 
innobackupex --copy-back /root/2017-08-30_21-55-01
 
 
7:修改数据目录的属主和属组为mysql
 
chown -R mysql.mysql /data/

MySQL 基于xtrabackup备份—热备工具的更多相关文章

  1. MySQL 5.6 双机热备windows7

    MySQL 5.6 双机热备 目录: 1.说明 2.数据手工同步 3.修改主数据库配置文件 4.修改从数据库配置文件 5.主数据库添加备份用户 6.从数据库设置为Slave 7.验证 1.说明 1)数 ...

  2. Mysql+Keepalived双主热备高可用操作记录

    我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互为Mast ...

  3. Mycat+Mysql主从复制实现双机热备

    Mycat+Mysql主从复制实现双机热备 一.mysql主从配置原理 双机热备的概念简单说一下,就是要保持两个数据库的状态自动同步.对任何一个数据库的操作都自动应用到另外一个数据库,始终保持两个数据 ...

  4. 载]mysqlhotcopy 热备工具体验与总结

    载]mysqlhotcopy 热备工具体验与总结 今天有空尝试了一下MYSQLHOTCOPY这个快速热备MYISAM引擎的工具.(本文是针对单个服务器的情况,以后将会加入多服务器相关操作)他和MYSQ ...

  5. (4.14)mysql备份还原——mysql物理热备工具之ibbackup

    关键词:mysql热备工具,ibbackup,mysql物理备份工具 1. 准备 ibbackup 是 InnoDB 提供的收费工具,它支持在线热备 InnoDB 数据,主要有以下特性: * Onli ...

  6. MySQL 基于mysqldump备份工具实战演练

    前言: 细节提示:先执行 show global variables like 'log_bin';看看log_bin的值,如果服务器变量log_bin的值为OFF,需要修改my.cnf配置文件,将l ...

  7. mysql之 percona-xtrabackup 2.4.7安装(热备工具)

    准备:os是centos6.7,提前下载并上传 percona-xtrabackup 安装包,下载网址为: https://www.percona.com/downloads/XtraBackup/L ...

  8. MySQL物理物理备份与还原工具xtraBackup

    (一)xtraBackup简介 xtraBackup是Percona公司开发的一款MySQL数据库备份软件,在备份模式中属于物理备份.其显著特点是开源.免费.备份执行过程中不会阻塞事物.备份可压缩.支 ...

  9. mysql+keepalived 双主热备高可用

    理论介绍:我们通常说的双机热备是指两台机器都在运行,但并不是两台机器都同时在提供服务.当提供服务的一台出现故障的时候,另外一台会马上自动接管并且提供服务,而且切换的时间非常短.MySQL双主复制,即互 ...

随机推荐

  1. LIFO栈 ADT接口 数组实现

    LIFO 栈结构 typedef int ElemenType; struct seqStack{ ElemeType data[MaxSize]; int top; }; typedef struc ...

  2. 微信小程序-js为object添加属性

    代码如下: var my_set = result.attributes.my_set; if (my_set == undefined) { my_set = { is_be_agree: e.de ...

  3. 20155301 2016-2017-2 《Java程序设计》第10周学习总结

    20155301 2016-2017-2 <Java程序设计>第10周学习总结 教材学习内容总结 计算机网络: 1.在计算机网络中,现在命名IP地址的规定是IPv4协议,该协议规定每个IP ...

  4. SublimeText 改变 tab的距离

    view -> Indentation -> Tab width ……

  5. 成都优步uber司机客户端下载-支持安卓、IOS系统、优步司机端Uberpartner

    国外打车软件优步乘客端大家在手机应用商店里都可以下载到,但是优步司机的App却不好找下载地址:这就跟滴滴打车一样,滴滴的乘客端是滴滴打车,而司机端是滴滴专车,司机版本在应用商店里都找不到,原因不清楚. ...

  6. vmware因为软件出过一次复制的错误导致不能复制到主机的解决方法

    只需要把vmware的虚拟机进程全部结束掉,然后重置(先设置不勾选复制等,然后保存后在勾选上并保存)一次虚拟机隔离设置(需要在关闭虚拟机的情况下设置,否则就是灰色不允许操作),然后再开启虚拟机,就能正 ...

  7. [转]关于PreparedStatement.addBatch()方法

    Statement和PreparedStatement的区别就不多废话了,直接说PreparedStatement最重要的addbatch()结构的使用. 1.建立链接,(打电话拨号 ) Connec ...

  8. 在docker中执行linux shell命令

    在docker中执行shell命令,需要在命令前增加sh -c,例如: docker run ubuntu sh -c 'cat /data/a.txt > b.txt' 否则,指令无法被正常解 ...

  9. SQL基本数据类型等

    bit   类似C#中的bool类型   true/false int   整型 nvarchar  字符串类型 float   小数型 decimal(,) 小数型  (限制小数位数) dateti ...

  10. 如何下载YouTube 60fps视频

    YouTube上面不仅支持分辨率为4K和8K的视频,同时也开启了对60fps视频的支持.60帧的视频广泛用于游戏和体育视频中,使视频看起来更加流畅和细腻.对游戏玩家来说,YouTube对60fps支持 ...