逻辑备份mysqldump和物理备份xtrabackup的流程
发表于:2026-11-02 作者:千家信息网编辑
千家信息网最后更新 2026年11月02日,mysqldump备份原理备份的基本流程如下:FLUSH TABLES功能:关闭实例上所有打开表目的:为第二步prepare,为了避免较长的事务操作造成FLUSH TABLES WITH READ L
千家信息网最后更新 2026年11月02日逻辑备份mysqldump和物理备份xtrabackup的流程
mysqldump备份原理
备份的基本流程如下:
FLUSH TABLES
功能:关闭实例上所有打开表目的:为第二步prepare,为了避免较长的事务操作造成FLUSH TABLES WITH READ LOCK操作迟迟得不到锁,但同时又阻塞了其它客户端操作FLUSH TABLES WITH READ LOCK
功能:加全局读锁目的:获得DB一致性状态SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
功能:设置当前会话的事务隔离等级为RR,RR可避免不可重复读和幻读目的:确保在备份事务中任何时刻数据都相同START TRANSACTION WITH CONSISTENT SNAPSHOT
功能:获取当前数据库的快照,这个是由mysqldump中--single-transaction决定的目的: 简而言之,就是开启事务并对所有表执行了一次SELECT操作,这样可保证备份时,在任意时间点执行select * from table得到的数据和执行START TRANSACTION WITH CONSISTENT SNAPSHOT时的数据一致obtain Log position
功能:获取binlog的相关信息,这个是由--master-data决定的目的:记录了开始备份时,binlog的状态信息,包括MASTER_LOG_FILE和MASTER_LOG_POS- 备份非innodb表数据(.frm,.myi,.myd等)
- unlock tables(非innodb表备份完毕)
- 备份innodb表数据
- 备份完成
xtrabackup备份原理
innobackupex的本质:innobackupex 脚本用来备份非 InnoDB 表,同时会调用 xtrabackup 命令来备份 InnoDB 表
备份的基本流程如下:
- innobackupex 在启动后,会先 fork 一个进程,启动 xtrabackup进程,然后就等待 xtrabackup 备份完 ibd 数据文件
- xtrabackup 在备份 InnoDB 相关数据时,是有2种线程的,1种是 redo 拷贝线程,负责拷贝 redo 文件,1种是 ibd 拷贝线程,负责拷贝 ibd 文件;redo 拷贝线程只有一个,在 ibd 拷贝线程之前启动,在 ibd 线程结束后结束。xtrabackup 进程开始执行后,先启动 redo 拷贝线程,从最新的 checkpoint 点开始顺序拷贝 redo 日志;然后再启动 ibd 数据拷贝线程,在 xtrabackup 拷贝 ibd 过程中,innobackupex 进程一直处于等待状态(等待文件被创建)
- xtrabackup 拷贝完成idb后,通知 innobackupex(通过创建文件),同时自己进入等待(redo 线程仍然继续拷贝)
- innobackupex 收到 xtrabackup 通知后,执行FLUSH TABLES WITH READ LOCK (FTWRL),取得一致性位点,然后开始备份非 InnoDB 文件(包括 frm、MYD、MYI、CSV、opt、par等)。拷贝非 InnoDB 文件过程中,因为数据库处于全局只读状态,如果在业务的主库备份的话,要特别小心,非 InnoDB 表(主要是MyISAM)比较多的话整库只读时间就会比较长,这个影响一定要评估到
- 当 innobackupex 拷贝完所有非 InnoDB 表文件后,通知 xtrabackup(通过删文件) ,同时自己进入等待(等待另一个文件被创建)
- xtrabackup 收到 innobackupex 备份完非 InnoDB 通知后,就停止 redo 拷贝线程,然后通知 innobackupex redo log 拷贝完成(通过创建文件)
- innobackupex 收到 redo 备份完成通知后,就开始解锁,执行 UNLOCK TABLES
- 最后 innobackupex 和 xtrabackup 进程各自完成收尾工作,如资源的释放、写备份元数据信息等,innobackupex 等待 xtrabackup 子进程结束后退出
备份
拷贝
数据
文件
线程
进程
功能
目的
事务
同时
状态
一致
信息
流程
一致性
全局
原理
数据库
时间
是由
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
云之行互联网科技
互联网 科技
科技服务与互联网
互联网科技小贷
善班互联网科技
互联网高科技企业
互联网科技大会
北京三清互联网科技
互联网之后的科技是什么
互联网企业和科技型企业
广西互联网科技孵化中心
朱啸虎曾投资哪些互联网科技企业
众安科技工业互联网合作
南通创西澳互联网科技有限公司
杭州披云加互联网科技有限公司
万物互联网智能科技
广州智享互联网科技
北京互联网科技类企业分布
互联网金融金融科技
黑龙江互联网科技公司
恒生科技互联网指数分析
现代科技和互联网有关系吗
西藏七维空间互联网科技有限公司
宁波青枫互联网科技有限公司
昭通云南众福互联网科技有限公司
苏州五指互联网络科技有限
燊美集互联网科技有限公司
北京市互联网新科技
银川新华互联网科技学校是国营吗
悟空问答互联网科技