【DB宝35】使用MySQL 8.0 克隆(clone)插件快速添加MGR节点

0    2221    4

👉 本文共约1814个字,系统预计阅读时间或需7分钟。

【DB宝35】使用MySQL 8.0 克隆(clone)插件快速添加MGR节点

一、MySQL 8.0.17的克隆clone简介

MySQL 8.0.17的克隆插件允许在本地或从远程 MySQL 实例在线克隆数据,从此搭建从库可以不再需要备份工具(PXB或mysqldump)来实现了。克隆数据是存储在 InnoDB 其中的数据的物理快照,其中包括库、表、表空间和数据字典元数据。克隆的数据包含一个功能齐全的数据目录,允许使用克隆插件进行 MySQL 服务器配置。

克隆插件支持两种克隆方式:

  • 本地克隆:本地克隆操作将启动克隆操作的 MySQL 服务器实例中的数据克隆到同服务器或同节点上的一个目录里。

【DB宝35】使用MySQL 8.0 克隆(clone)插件快速添加MGR节点

  • 远程克隆:默认情况下,远程克隆操作会删除接受者(recipient)数据目录中的数据,并将其替换为捐赠者(donor)的克隆数据。(可选)您也可以将数据克隆到接受者的其他目录,以避免删除现有数据。

【DB宝35】使用MySQL 8.0 克隆(clone)插件快速添加MGR节点

远程克隆操作和本地克隆操作克隆的数据没有区别,数据是相同的。克隆插件支持复制。除克隆数据外,克隆操作还从捐赠者中提取并传输复制位置信息,并将其应用于接受者,从而可以使用克隆插件来配置组复制或主从复制。使用克隆插件进行配置比复制大量事务要快得多,效率更高。

MySQL 8.0 clone插件提供从一个实例克隆数据的功能,克隆功能提供了更有效的方式来快速创建MySQL实例,搭建主从复制和组复制。本文介绍使用 MySQL 8.0 clone 插件快速添加组复制(MGR)节点的方法。

官网地址:https://dev.mysql.com/doc/refman/8.0/en/clone-plugin.html

本人提供Oracle、MySQL、PG等数据库的培训和考证业务,私聊QQ646634621或微信db_bao,谢谢!

二、MGR现有环境

已有MGR集群,多主模式:

docker环境:

通过clone插件新加节点: 172.72.0.18。

三、使用clone技术添加MGR节点

3.1 初始化新节点

3.2 新节点安装clone插件和组复制插件

3.3 新节点执行克隆任务

3.4 在原3节点执行修改参数

3.5 新节点启动MGR

至此,通过clone插件的方式添加MGR节点已成功,非常简单也非常快速。

四、总结

克隆技术的一些限制条件:

  • 版本大于等于8.0.17且不支持跨版本。要求相同版本号,您无法MySQL 5.7和MySQL 8.0之间进行克隆,在8.0.19和8.0.20之间也不可以,而且要求版本>=8.0.17。

  • 克隆操作期间不允许使用 DDL,允许并发DML。

  • 两台机器具有相同的操作系统OS。同一平台同一架构,例如linux to windows、x64 to x32 是不支持。

  • 两台MySQL实例具体相同的 innodb_page_size 和 innodb_data_file_path(ibdata文件名)

  • 同一时刻仅仅允许有一个克隆任务存在

  • recipient 需要设置变量clone_valid_donor_list

  • max_allowed_packet 大于2M

  • doner的undo表空间文件名称不能重复

  • 不会克隆my.cnf文件

  • 不会克隆binlog二进制日志。

  • 仅仅支持innodb引擎。不克隆其他存储引擎数据。MyISAM并且 CSV存储在包括sys模式的任何模式中的表都被克隆为空表。

  • 捐赠者和接受者都需要安装克隆插件

  • 捐赠者和接受者分别需要有至少BACKUP_ADMIN/CLONE_ADMIN权限的账号

  • 不支持通过MySQL router连接到捐赠者实例。

  • 默认情况下,克隆数据后会自动重新启动接受者 MySQL 实例。要自动重新启动,必须在接收方上提供监视进程以检测服务器是否已关闭。否则,在克隆数据后,克隆操作将停止并出现以下错误,并且关闭接受者 MySQL 服务器实例。 此错误不表示克隆失败。这意味着必须在克隆数据后手动重新启动接受者的 MySQL 实例。

标签:

头像

小麦苗

学习或考证,均可联系麦老师,请加微信db_bao或QQ646634621

您可能还喜欢...

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

4 + 12 =

 

嘿,我是小麦,需要帮助随时找我哦
  • 18509239930
  • 个人微信

  • 麦老师QQ聊天
  • 个人邮箱
  • 点击加入QQ群
  • 个人微店

  • 回到顶部
返回顶部