背景:

MariaDB 在10.0.5就已经支持了并行复制的功能,即从库多线程复制的功能。MySQL最先在5.6.3中支持。目前暂时没有用MySQL5.6的版本,故暂时只对MariaDB进行一些说明,后期会对MySQL进行说明。

对于replication很多同学都已经很熟悉了,这里稍微讲下,在复制过程中有3个线程:Master上的IO线程和Slave上的IO、SQL线程,复制的原理可以自己去google搜。从库一直都是异步复制主库的,通过SHOW SLAVE STATUS 可以查看从库落后主库的时间,当然这个时间不一定准确。从库落后主库的原因很大一部分是因为程序在主库上执行SQL是多线程的,而从库复制主库却只有一个线程。在MariaDB10.0.0和MySQL5.6.3之前一直也是这样。在其之后的版本里支持了多线程复制,下面来看看如何开启,和开启之后的效果,目前只针对MariaDB。

说明:

MariaDB在配置文件的mysqld选项组中添加:

slave-parallel-threads

我手动修改成了8,该参数可以动态修改,在修改之前需要先stop slave。修改完之后的效果:

可以看到复制线程有8个。说明已经开启了多线程复制的功能。

MySQL在配置文件的mysqld选项组中添加:

slave_parallel_workers
采用多个sql线程,每个sql线程处理不同的database,提高了并发性能,即使某database的某条语句暂时卡住,也不会影响到后续对其它的database进行操作。如果只有一个database要同步,那么多个sql线程也没有什么意义。

多线程复制在一定程度上解决了从库延迟主库并且很难追上的问题,有兴趣的同学可以玩玩MySQL的多线程复制。

MySQL\MariaDB 多线程复制初探相关推荐

  1. 《MySQL——备库多线程复制策略。》

    目录 备库并行复制能力 MySQL5.6版本 并行复制策略 MariaDB 并行复制策略 MySQL5.7版本 并行复制策略 MySQL5.7.22版本 并行复制策略 总结 备库并行复制能力 主要涉及 ...

  2. MySQL并发复制系列二:多线程复制

    首先梳理下传统MySQL/MariaDB主备复制基本原理: 主从复制通过三个线程来完成,在master节点运行的binlog dump的线程,I/O线程和SQL线程运行在slave 节点 ·      ...

  3. mysql 5.7配置多线程复制,MySQL5.7复制功能实战,基于事务的复制,多源复制和多线程复制配置...

    这篇是幕课网-MySQL5.7复制功能实战视频教程的学习笔记.http://www.imooc.com/learn/589 第1章 MySQL复制基础 MySQL是异步复制 采取针对特定用户的读写分离 ...

  4. mysql多线程复制binlog_MySQL并发复制系列一:binlog组提交 (转载)

    http://blog.csdn.net/woqutechteam/article/details/51178803 MySQL  Binary log在MySQL 5.1版本后推出主要用于主备复制的 ...

  5. mysql多线程复制crash_MySQL 并行复制(MTS) 从库发生异常crash分析

    背景 半同步复制从库在晚上凌晨2点半发生异常crash,另一个异步复制从库在第二天凌晨3点也发生了异常crash. 版本 mysql 5.7.16 redhat 6.8 mysql> show ...

  6. CentOS7+MySQL/MariaDB+Galera+HAProxy+Keepalived构建高可用数据库集群

    方案优势: Galera能够实现MySQL/MariaDB数据库的主主复制和多主复制等模式,这些复制模式都是同步进行的,同步时间非常短 每一个节点都可以同时写入和读取,当某一节点发生故障时,可自动从集 ...

  7. MySQL/MariaDB基础及简单SQL语句

    MySQL是一种开放源代码的关系型数据库管理系统(RDBMS),使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理. 在Linux操作系统内核中提供了MySQL或MariaDB的rp ...

  8. MySQL Replication--多线程复制MTS

    多线程复制 多线程复制MTS(Mult-Threaded Slave Applier)指使用多个线程来并发应用二进制日志. 在MYSQL5.6版本中,多线程复制基于schema来实现,将多个数据库下的 ...

  9. 淘宝内部分享:MySQL MariaDB性能优化

     淘宝内部分享:MySQL & MariaDB性能优化 摘要:MySQL是目前使用最多的开源数据库,但是MySQL数据库的默认设置性能非常的差,必须进行不断的优化,而优化是一个复杂的任务, ...

最新文章

  1. 波士顿动力机器狗在工厂打工的实录火了
  2. sap 用户权限表_干货丨SAP系统的RPA实施技巧
  3. drawable和values的加载规则
  4. swagger api文档_带有Swagger的Spring Rest API –创建文档
  5. 极光推送JPush的快速集成
  6. 搭载鸿蒙的油烟机,华为、美的合作:搭载鸿蒙系统的家电来了 三大亮点
  7. 设计模式之开放封闭原则
  8. 人工智能的本源与展望:从亚里士多德到平行智能
  9. 汇编语言---GCC内联汇编
  10. 为初学者介绍10个最常被问到的Javascript问题
  11. SQL63 刷题通过的题目排名
  12. [转载] Python字典按照keys排序输出为列表
  13. Linux命令 - unzip命令
  14. ov5640帧率配置_OV5640摄像头的数据处理配置流程(一)
  15. 百度谷歌淘宝自定义搜索乱码问题的解决
  16. OpenCV python 绘制椭圆形
  17. 基尼不纯度(Gini impurity)
  18. 计算机安全模式还原系统,Win10电脑安全模式怎么还原系统?Win10电脑安全模式还原系统方法步骤...
  19. 部门月度例会的一些创新,让会议参与者不再那么沉闷枯燥
  20. mysql against_mysql全文模糊搜索MATCH AGAINST方法示例

热门文章

  1. canvas 实现图片局部模糊_JavaScript中的图片处理与合成(四)
  2. js数组中的引用类型
  3. leetcode-7-整数翻转
  4. centos7 nginx yum 配置
  5. 钉钉小程序数据传递——子传父,父传子
  6. 网络流(3)——找到最小st-剪切
  7. 指令篇: 查看系统版本信息___uname
  8. NodeJS Web模块
  9. C# Linq获取两个List或数组的差集交集
  10. cgic: 为C语言编写CGI的C函数库