云数据库 MySQL 并行复制

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

相关产品
云数据库 MySQL 产品页,含版本规格、价格与购买入口。

一、功能介绍

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

二、支持版本

·内核版本 MySQL 8.0 20201230及以上

·内核版本 MySQL 5.7 20180530及以上

·内核版本 MySQL 5.6 20170830及以上

三、适用场景

该功能主要针对部分负载能提升备节点重放 binlog 速度,减少主备的延迟。

四、使用说明

注意:说明:

注意:并行复制能力通过设置参数 slave_parallel_workers 不为0来开启,在 MySQL 5.6、5.7、8.0版本的高稳定性参数模板中,此参数默认值为0,在高性能参数模板中,此参数默认值为8。

MySQL 5.6、5.7、8.0版本如需按 TABLE 执行并行复制,在设置参数 slave_parallel_workers 不为0的前提下,可通过将参数 slave_parallel_type 设置为新增加的值 TABLE 来实现。

另外 information_schema 下新增加了状态表 cdb_slave_thread_status,用以展示状态信息。

MySQL 5.6版本相关参数说明MySQL 5.7版本相关参数说明MySQL 8.0版本相关参数说明

参数名 动态 类型 默认 参数值范围 说明
slave_parallel_type YES char* SCHEMA SCHEMA/TABLE 从机并行复制级别:SCHEMA 为对象级别复制,不同对象的复制事件可以并行执行。TABLE 为表级别复制,不同表的复制事件可以并行执行。
参数名 动态 类型 默认 参数值范围 说明
slave_parallel_type YES char* LOGICAL_CLOCK DATABASE/TABLE/LOGICAL_CLOCK 从机并行复制级别:DATABASE 为库级别的复制,不同数据库的复制事件可并行完成。TABLE 为表级别复制,不同表的复制事件可以并行执行。LOGICAL_CLOCK 为逻辑时钟级别复制,在主机上属于相同逻辑时钟的事件可并发执行。
参数名 动态 类型 默认 参数值范围 说明
slave_parallel_type YES char* LOGICAL_CLOCK DATABASE/TABLE/LOGICAL_CLOCK 从机并行复制级别:DATABASE 为库级别的复制,不同数据库的复制事件可并行完成。TABLE 为表级别复制,不同表的复制事件可以并行执行。LOGICAL_CLOCK 为逻辑时钟级别复制,在主机上属于相同逻辑时钟的事件可并发执行。
赞 (0)
上一篇 4天前
下一篇 4天前