首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

MySQL · 物理备份 · XtraBackup备份原理

xtrabackup 是用来备份 InnoDB 表的,不能备份非 InnoDB 表,和 mysqld server 没有交互; innobackupex 脚本用来备份非 InnoDB 表,同时会调用 xtrabackup...两个工具都在备份和解压时都会用到(如果备份用了加密和并发)。 本文的介绍的主角是 innobackupex 和 xtrabackup。...举个栗子,我们来看备份时 xtrabackup_suspended_2 是怎么来协调2个工具进程的 innobackupex 在启动 xtrabackup 进程后,会一直等 xtrabackup 备份完...PXB备份过程 PXB 备份过程 innobackupex 在启动后,会先 fork 一个进程,启动 xtrabackup进程,然后就等待 xtrabackup 备份完 ibd 数据文件; xtrabackup...每次备份会记录当前备份到的LSN(xtrabackup_checkpoints 文件中),增量备份就是只拷贝LSN大于上次备份的page,比上次备份小的跳过,每个 ibd 文件最终备份出来的是增量 delta

5.3K10
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    MySQL物理备份 xtrabackup

    MySQL 备份之 xtrabackup | innobackupex Xtrabackup 介绍 Xtrabackup 是一个对 InnoDB 做数据备份的工具,支持在线热备份(备份时不影响数据读写)...Xtrabackup有两个主要的工具:xtrabackup、innobackupex 1、xtrabackup只能备份InnoDB和XtraDB两种数据表,而不能备份MyISAM数据表 2、innobackupex...C、Xtrabackup 备份原理 XtraBackup以read-write模式打开innodb的数据文件,然后对其进行复制。其实它不会修改此文件。...D、Xtrabackup 实现细节 基于以上原理,xtrabackup 备份恢复工具比较适合数据增长型数据库。对于数据增长型的库,由于数据的增长导致数据备份和恢复的空间和时 间上的压力较大。...而xtrabackup有增量备份的功能,在短时间内可以通过进行增量备份来保证数据的安全性。而长期来看,仍然需要间断性的进行全库 备份。

    77120

    Xtrabackup实现MySQL备份

    一.xtrabackup介绍 Xtrabackup是一个对InnoDB做数据备份的工具,支持在线热备份(备份时不影响数据读写)它由percona提供的MySQL数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对...特点: (1)备份过程快速、可靠; (2)备份过程不会打断正在执行的事务; (3)能够基于压缩等功能节约磁盘空间和流量; (4)自动实现备份检验; (5)还原速度快; 注意:xtrabackup只能备份....1.gz Xtrabackup中主要包含两个工具: xtrabackup:是用于热备份innodb, xtradb表中数据的工具,不能备份其他类型的表,也不能备份数据表结构; innobackupex...:是将xtrabackup进行封装的perl脚本,提供了备份myisam表的能力。...(4)xtrabackup_binary —— 备份中用到的xtrabackup的可执行文件; (5)backup-my.cnf —— 备份命令用到的配置选项信息; 在使用innobackupex进行备份时

    77910

    xtrabackup 备份还原mysql

    有一个项目要从云上整体迁移到公司机房内,里面有mysql5.6.20,这个mysql没做过备份,也没主从,然后打算通过xtrabackup先做个全备,然后再做个主从(因为在迁移的阶段,云上服务器还会有新的数据生成...,主从是为了确保迁移的数据完整) 一、安装mysql5.6.20 在新机器上部署mysql5.6.20,需确保和之前的mysql版本一致 my.cnf也要基本一致 二、xtrabackup的安装 #...在安装 xtrabackup rpm -Uvh --force --nodeps --replacepkgs *.rpm # 安装的版本比较旧,为了迎合 mysql5.6.20 yum localinstall...percona-xtrabackup-2.2.12-1.el7.x86_64.rpm 验证是否安装成功:输入命令innob,按tab键,若自动补全innobackupex ,则说明安装成功。...#日志回滚 --incremental= #增量备份,后跟增量备份路径 --incremental-basedir= #增量备份,指上次增量备份路径 --redo-only

    34310

    Mysql 备份恢复与xtrabackup备份

    Xtrabackup安装完成后有4个可执行文件,其中2个比较重要的备份工具是innobackupex、xtrabackup 1)xtrabackup 是专门用来备份InnoDB...全量备份与恢复   这一阶段会启动xtrabackup内嵌的innodb实例,回放xtrabackup日志xtrabackup_log,将提交的事务信息变更应用到innodb...  方法一:直接将备份文件复制回来 cp -a /backup/full/ /application/mysql/data chown -R mysql.mysql...在使用参数stream=tar备份的时候,你的xtrabackup_logfile可能会临时放在/tmp目录下,如果你备份的时候并发写入较大的话 xtrabackup_logfile可能会很大(5G+)...如果表空间数量巨大,这是一种可以关闭不再访问的文件句柄的方法。使用该选项有风险,会有产生不一致备份的可能。 --compact 该选项表示创建一份没有辅助索引的紧凑的备份。

    15.4K30

    MySQL备份之Xtrabackup

    1、介绍 1.1、主要特点 1.2、相关词汇 1.3、XtraBackup备份原理 1.4、XtraBackup恢复步骤 2、安装 2.1、安装依赖包 2.2、下载软件并安装 3、全量备份和恢复...6.1、备份用户创建 6.2、全量备份 6.3、增量备份 6.4、binlog备份 xtrabackup是percona公司专门针对mysql 数据库开发的一款开源免费的物理备份(热备)工具,可以对...备份期间产生的新的数据变化redo也会备份走 非InnoDB表: 温备份:锁表备份 触发FTWRL全局锁表 拷贝非InnoDB表的数据 解锁 再次统计LSN号码,写入到专用文件xtrabackup...-----. 1 root root 31987200 Mar 25 10:53 xtrabackup_logfile xtrabackup_binlog_info 备份时刻的binlog位置 记录的是备份时刻...,对于增量有别的显示方法) to_lsn = 14194921406 # 备份开始时间(ckpt)点数据页的LSN last_lsn = 14200504300 # 备份结束后,redo日志最终的

    1.2K40

    XtraBackup备份流程介绍

    XtraBackup备份流程介绍 01 背景 Xtrabackup是Percona公司开发的一款开源的MySQL热备份工具,之前的工作中也是经常使用,但是也仅仅是停留在使用的阶段,对于这个工具的细节...Innobackup是对xtrabackup的封装,可以备份非Innodb的表。...9、紧接着,就是一些收尾工作,释放资源,备份元数据信息,打印备份目录,备份binlog的位置信息,以及写入xtrabackup_info文件信息等。...xtrabackup_checkpoints:记录备份的类型、备份的状态信息、增量备份依赖于这个信息 xtrabackup_binlog_info:该文件记录备份时候的二进制文件信息和偏移量位置信息。...xtrabackup_binary:该文件记录备份进程使用的xtrabackup二进制文件。

    1.6K10

    Xtrabackup 流备份与恢复

    Xtrabackup是MySQL数据库的备份不可多得的工具之一。提供了全备,增备,数据库级别,表级别备份等等。最牛X的还有不落盘的备份,即流备份方式。...对于服务器上空间不足,或是搭建主从,直接使用流式备份大大简化了备份后的压缩复制所带来的更多开销。Xtrabackup支持tar格式以及xbstream格式的流备份。本文即是对此展开的相关描述。...,异机未安装xbstream(封装在xtrabackup中)则出现如下错误提示。   ...xtrabackup: Error writing file 'UNOPENED' (Errcode: 32 - Broken pipe)   [01] xtrabackup: Error: xtrabackup_copy_datafile...innobackupex: Error: The xtrabackup child process has died at /usr/bin/innobackupex line 2681. b、异机备份时需要建立等效性

    5.6K20

    使用Xtrabackup进行MySQL备份

    使用Xtrabackup进行MySQL备份 一、安装 1、简介 Xtrabackup是由percona提供的mysql数据库备份工具,据官方介绍,这也是世界上惟一一款开源的能够对innodb和xtradb...(4)xtrabackup_binary —— 备份中用到的xtrabackup的可执行文件; (5)backup-my.cnf —— 备份命令用到的配置选项信息; 在使用innobackupex进行备份时...的“流”及“备份压缩”功能 Xtrabackup对备份的数据文件支持“流”功能,即可以将备份的数据通过STDOUT传输给tar程序进行归档,而不是默认的直接保存至某备份目录中。...其简单使用方法如下: # innobackupex –parallel /path/to/backup 同时,innobackupex备份的数据文件也可以存储至远程主机,这可以使用–remote-host...对数据库进行部分备份 Xtrabackup也可以实现部分备份,即只备份某个或某些指定的数据库或某数据库中的某个或某些表。

    1K20

    xtrabackup备份的几个细节

    // xtrabackup备份的几个细节 // 这个周依旧没有上班,处于在家办公状态,发现在家还挺忙的,要自己做饭,洗碗,烧水,巴拉巴拉,一大堆事情~搞得还挺忙的。...今天在测试xtrabackup的一些细节部分,这里罗列几点很细节的地方,希望对大家有点帮助吧。...1、在使用xtrabackup进行备份的时候,有时候需要输入--host参数,但是习惯了mysql的写法,总是会将--host=127.0.0.1写成简写:-h127.0.0.1,今天就吃了个亏,在innobackupex...查看备份文件xtrabackup_checkpoint可以看到: 备份类型居然是full-backuped,可以看到,这个备份是变成了一个全量备份。...,在多次增量备份之后,如果我们需要使用最后一次的增量备份进行数据恢复,则需要对全量备份和之前的增量备份做apply-log的操作,在操作的过程中,需要加上--redo-only参数。

    53020

    GDB查看xtrabackup备份流程

    xtrabackup备份原理其实到处都能找到, 也有很多源码解读的, 但是都不太直观, 所以本文使用GDB查看下xtrabacup的备份流程(仅全备流程) 写在前面 gdb的基础使用可以看前面的文章:...参数初始完成后(含连接Mysql), 就到了备份函数, 使用step进入备份函数, 查看详情 图片 获取当前LSN 图片 创建新线程去拷贝日志 图片 可以使用thread 2 切换到2线程去, 看下这个线程的栈帧...copy/move: xtrabackup_copy_back/xtrabackup_move_back 3. xtrabackup是以备份结束时间点为恢复点的, (mysqldump是以备份开始的时间点作为恢复点的...因为xtrabackup是利用的redo记录备份期间的数据变化的, Mysqldump是以事务(--single-transaction)去保证数据一致的 4....备份流程如下 开始备份 初始化参数 获取当前LSN 拷贝redo log(持续拷贝) 获取表空间(innodb)信息 拷贝innodb数据 拷贝myisam表(可能会锁,和参数--no-lock有关)

    88640

    xtrabackup备份报错案例

    最近发现隔几天就会出现一台实例备份失败的情况,具体的报错信息如下所示 xtrabackup: error: log block numbers mismatch: xtrabackup: error:...原因分析 备份失败原因在xtrabackup的输出信息中已经有说明:log block numbers mismatch,大概的意思是说:XtraBackup在顺序拷贝完redo log末尾的数据后,重新从...2、检查实例在备份时间左右的负载,发现实例的整体负载都正常,没发现异常; 3、此时又想起了一件事,最近将8个分布式集群的的配置方式调整成了全量备份,并且远程备份传输; 检查备份机的监控,发现备份机的压力比较大...,所以出现网络带宽小而导致拥堵的情况 解决方法 由于innodb_log_file_size变量不能动态更改,暂时也不能重启数据库更改变量值,并且备份失败的原因也不在redo大小设置的问题。...所以将XtraBackup的开始时间推迟了一段时间,以错开集群备份时的IO高峰期。 备份计划推迟后,经过一周的观察,该实例的备份没有再次出现错误。

    1.8K20

    Mysql备份与还原——xtrabackup

    Xtrabackup 提供了两种命令行工具: xtrabackup:专用于备份 InnoDB 和 XtraDB 引擎的数据; innobackupex:这是一个 perl 脚本,在执行过程中会调用 xtrabackup...案例一:xtrabackup 完全备份+binlog 增量备份 1、创建备份目录 ?...(4)xtrabackup_binary ——备份中用到的 xtrabackup 的可执行文件; (5)backup-my.cnf ——备份命令用到的配置选项信息; 在使用 innobackupex 进行备份时...案例二、xtrabackup 完全备份+xtrabacup 增量备份 前面我们进行增量备份时,使用的还是老方法:备份二进制日志。其实 xtrabackup 还支持进行增量备份。...---- Xtrabackup 的“流”及“备份压缩”功能 Xtrabackup 对备份的数据文件支持“流”功能,即可以将备份的数据通过 STDOUT 传输给 tar 程序进行归档,而不是默认的直接保存至某备份目录中

    5.3K30
    领券