zoukankan      html  css  js  c++  java
  • Xtrabackup实现mysql数据的备份与恢复

    Xtrabackup介绍

      Xtrabackup是由percona开源的免费数据库热备份软件,它能对InnoDB数据库和XtraDB存储引擎的数据库非阻塞地备份(对于MyISAM的备份同样需要加表锁);mysqldump备份方式是采用的逻辑备份,其最大的缺陷是备份和恢复速度较慢,如果数据库大于50G,mysqldump备份就不太适合。

    Xtrabackup安装完成后有4个可执行文件,其中2个比较重要的备份工具是innobackupex、xtrabackup

    1)xtrabackup 是专门用来备份InnoDB表的,和mysql server没有交互;

    2)innobackupex 是一个封装xtrabackup的Perl脚本,支持同时备份innodb和myisam,但在对myisam备份时需要加一个全局的读锁。

    3)xbcrypt 加密解密备份工具

    4)xbstream 流传打包传输工具,类似tar

    Xtrabackup优点

    Xtrabackup优点

    1)备份速度快,物理备份可靠

    2)备份过程不会打断正在执行的事务(无需锁表)

    3)能够基于压缩等功能节约磁盘空间和流量

    4)自动备份校验

    5)还原速度快

    6)可以流传将备份传输到另外一台机器上

    7)在不增加服务器负载的情况备份数据

    Xtrabackup安装

      1、下载xtrabackup:https://www.percona.com/downloads/XtraBackup/Percona-XtraBackup-2.4.9/binary/redhat/6/x86_64/Percona-XtraBackup-2.4.9-ra467167cdd4-el6-x86_64-bundle.tar;

      2、在服务器上解压:tar xf Percona-XtraBackup-2.4.9-ra467167cdd4-el6-x86_64-bundle.tar

        

      3、在服务上上安装:yum install percona-xtrabackup-24-2.4.9-1.el6.x86_64.rpm -y

        

      4、查看Xtrabackup安装路径:which xtrabackup

        

      5、查看Xtrabackup安装版本:innobackupex -v

        

      到此处,说明Xtrabackup已安装成功;

    Xtrabackup全量备份与恢复

      1、备份命令:innobackupex --defaults-file=/etc/my.cnf --user=root --password="wzf...twf" --port=3306 --backup /database_bak/mysql/data

          

       出现 则说明备份成功;

          一般情况下,这个备份不能用于恢复,因为备份的数据中可能会包含尚未提交的事务或已经提交但尚未同步至数据文件中的事务,此时数据文件处于不一致的状态,使用apply-log相关数据性文件保持一致性状态:innobackupex --apply-log /database_bak/mysql/data/2019-08-01_15-18-48/

       

      2、测试一下删除的表是否能恢复

        A、恢复数据之前需要保证数据目录是空的状态;

        B、将原备份数据copy一份到另一个目录下:cp -r /database_bak/mysql/data/2019-08-02_15-30-08 /database_bak/mysql/oldData/

          

        C、执行恢复指令:innobackupex --defaults-file=/etc/my.cnf --copy-back /database_bak/mysql/copyData/2019-08-02_09-59-57

          

        D、出现则说明恢复成功;

          

  • 相关阅读:
    上周热点回顾(2.12-2.18)团队
    上周热点回顾(2.5-2.11)团队
    上周热点回顾(1.29-2.4)团队
    云计算之路-阿里云上:部分服务器未及时续费造成docker swarm集群故障团队
    Git学习系列之Windows上安装Git之后的一些配置(图文详解)
    Git学习系列之Git 的缺点有哪些?
    Git学习系列之Git的功能特性(从一般开发者的角度和主开发者的角度来剖析)
    Git学习系列之经典的Git开发过程
    Git学习系列之Windows上安装Git详细步骤(图文详解)
    Git学习系列之集中式版本控制系统vs分布式版本控制系统
  • 原文地址:https://www.cnblogs.com/vofill/p/11281071.html
Copyright © 2011-2022 走看看