mydumper

mydumper 是一款高性能的 MySQL 逻辑备份工具,支持并行备份,提供比 mysqldump 更快的备份速度。mydumper 在备份过程中施加全局只读锁,保证数据一致性,并生成多种文件类型,如 metadata、schema 和数据文件。myloader 则用于数据恢复。mydumper 和 myloader 提供丰富的参数选项以满足不同备份和恢复需求。
摘要由CSDN通过智能技术生成

mydumper

mydumper 介绍

项目地址

mysqldump 是单线程进行数据库备份的工具,在数据量比较大时,备份速度下降十分严重,mydumper 支持并行备份,备份速度更快,备份耗费时间更少。

特性:

  • 并行,高性能的 MySQL 逻辑导入导出工具
  • 非常方便管理导出的文件(文件拆分成单表存储, metadata 信息)
  • 导入导出时支持正则表达式

mydumper 备份机制

mydumper 备份原理示意图
time master_thread worker_thread
t1 FLUSH TABLES WITH READ LOCK
t2 START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
t3 SHOW MASTER STATUS
t4 SHOW SLAVE STATUS
t5 Connect db_instance using TCP/IP
t6 SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
t7 START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
t8 SHOW DATABASES
t9 Init DB
t10 backup all tables of myisam and some innodb tables
t11 UNLOCK TABLES /* FTWRL */
t12 Quit
t13 backup innodb tables
t14 Quit
mydumper 备份过程

mydumper 备份期间 general log

15180 Connect	root@127.0.0.1 on db3 using TCP/IP
15180 Query	FLUSH TABLES WITH READ LOCK
15180 Query	START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
15180 Query	SHOW MASTER STATUS
15180 Query	SHOW SLAVE STATUS
15181 Connect	root@127.0.0.1 on  using TCP/IP
15181 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
15181 Query	START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
15182 Connect	root@127.0.0.1 on  using TCP/IP
15182 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
15182 Query	START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
15183 Connect	root@127.0.0.1 on  using TCP/IP
15183 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
15183 Query	START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
15184 Connect	root@127.0.0.1 on  using TCP/IP
15184 Query	SET SESSION TRANSACTION ISOLATION LEVEL REPEATABLE READ
15184 Query	START TRANSACTION /*!40108 WITH CONSISTENT SNAPSHOT */
15181 Init DB	db3
15182 Query	SHOW CREATE DATABASE `db3`
15181 Query	SHOW TABLE STATUS
15182 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t_myisam' and extra like '%GENERATED%'
15184 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t2' and extra like '%GENERATED%'
15181 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t3' and extra like '%GENERATED%'
15183 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t1' and extra like '%GENERATED%'
15184 Query	SELECT /*!40001 SQL_NO_CACHE */ * FROM `db3`.`t2`
15181 Query	SELECT /*!40001 SQL_NO_CACHE */ * FROM `db3`.`t3`
15182 Query	SELECT /*!40001 SQL_NO_CACHE */ * FROM `db3`.`t_myisam`
15184 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t5' and extra like '%GENERATED%'
15181 Query	select COLUMN_NAME from information_schema.COLUMNS where TABLE_SCHEMA='db3' and TABLE_NAME='t4' and extra like '%GENERATED%'
15183 Query	SELECT /*!40001 SQL_NO_CACHE */ * FROM `db3`.`t1`
15180 Query	UNLOCK TABLES /* FTWRL */
15182 Query	SHOW CREATE TABLE `db3`.`t1`
15184 Query	SELECT /*!40001 SQL_NO_CACHE */ * FROM `db3`.`t5`
15183 Query	SHOW CREATE TABLE `db3`.`t2`
15180 Quit	
15184 Query	SHOW CREATE TABLE `db3`
  • 2
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值