使用MySQLPUMP进行数据库逻辑备份与恢复

本文介绍了MySQLPUMP,它是MySQL 5.7版本引入的逻辑备份工具,提供并行处理、对象过滤和压缩等功能,以提高备份速度和效率。MySQLPUMP支持多线程并行导出、转储文件压缩,以及对数据库对象的筛选,是对MySQLDUMP的有力补充。并详细讲解了如何使用其并行转储、特定对象转储和压缩转储等功能。
摘要由CSDN通过智能技术生成

      上节介绍的MySQLDUMP虽然能够实现很多数据逻辑复制场景,但它的应用也存在诸多限制。为了提高转储的速度和效率,本节将介绍MySQL社区版本自带的MySQLPUMP客户端实用程序,不用额外安装和配置即可使用。

MySQLPUMP软件介绍

MySQLPUMP概述

       MySQLPUMP是在MySQL 5.7版本引入的,它与MySQLDUMP不存在包含与被包含的关系,但可将其视为MySQLDUMP在功能和特性上的扩展或衍生。与MySQLDUMP类似,MySQLPUMP客户端实用程序也可以用于执行逻辑备份,在用法上也与MySQLDUMP的SQL格式一致。上节节介绍的MySQLDUMP其实存在诸多限制,其既不支持多线程并行导出,也不支持转储文件压缩,同时还不支持对数据库各类对象的过滤。但这类场景和需求,在用户的日常工作中非常常见。幸运的是,MySQL官方提供的MySQLPUMP程序都具备这些特性,这对前者形成了很好的补充。

       同样,MySQLPUMP章节的所有案例和场景,默认都是基于非GTID模式的MySQL环境。若用户环境是GTID模式,那么在指定“--all-databases”选项对实例进行全局转储时,建议启用“--set-gtid-purged”选项,以获得InnoDB表数据一致性备份开始前的二进制日志的起始位置;对于未显示使用“--all-databases”选项的所有其他类型备份,必须显式选择启用“--set-gtid-purged=ON”或禁用“--set-gtid-purged=OFF”选项,不然转储将会失败。

MySQLPUMP的功能和特性

MySQLPUMP实用程序包含但不限于下列功能或特性。

·可以并行处理数据库或数据库内的对象,以加快转储过程。

·可以更好更细地控制要转储的数据库或数据库对象(如表、触发器、存储过程、存储函数、数据库账户等)。

·将数据库账户转储为账户管理语句(CREATE USER、GRANT),而不是将其插入mysql系统数据库。

·程序本身支持压缩转储。

·进度指示器(估计值)。

·对于转储文件的重新加载,可以在插入行数据之后再为InnoDB表创建二级索引,以提高加载效率。

MySQLPUMP限制

MySQLPUMP包含但不限于以下限制。

·默认情况下,MySQLPUMP不会转储information_schema、performance_schema、ndbinfo或sys等系统库。

·MySQLPUMP不会转储InnoDB创建表空间语句。

·MySQLPUMP使用CREATE USER和GRANT语句以逻辑形式转储数据库账户。因此,mysql系统数据库的转储在默认情况下不包括用户定义的授权表。

MySQLPUMP并行处理

并行转储

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值