操作指南

API 文档

并行复制

最近更新时间:2021-10-29 18:15:01

功能介绍

官方 MySQL 5.6 以下的版本在 slave 节点进行回放,master 节点同步 binlog 时,均为单线程模式,5.6 及之后的版本变更为并行模式。但官方的并行是基于 database 和 logical clock,并行粒度太大,导致很多情况下并行效果不理想。

腾讯云 TXSQL 内核团队针对并行复制功能进行了优化,支持按 table 并行,相当于将其粒度拆分至表,提升了并行度,从而减少主从延迟。

支持版本

  • 内核版本 MySQL 5.7 20180530 及以上
  • 内核版本 MySQL 5.6 20170830 及以上

适用场景

该功能主要针对部分负载能提升 slave 机重放 binlog 速度,减少主从的 delay。

使用说明

通过将参数 slave_parallel_type 设置为新增加的值 TABLE 打开这个功能。
另外 information_schema 下新增加了状态表 cdb_slave_thread_status,用以展示状态信息。

参数名 动态 类型 默认 参数值范围 说明
slave_parallel_type YES char* DATABASE DATABASE/TABLE/LOGICAL_CLOCK 从机并行复制级别,
  • DATABASE 为库级别的复制,不同数据库的复制事件可并行完成。
  • TABLE 为表级别复制,不同表的复制事件可以并行执行。
  • LOGICAL_CLOCK 为逻辑时钟级别复制,在主机上属于相同逻辑时钟的事件可并发执行。