作品简介

在超大规模流量的分布式系统环境下,无论是从系统性能的角度,还是从数据安全性的角度,掌握MySQL主从原理,都是当下技术人员的必备基本功。MySQL主从原理是高可用架构的基石,即便是MGR这种集群架构也可以看到主从的影子。要解决一个问题或者故障,最快的方式就是了解它的原理,快速定位问题。本书从源码层面抽丝剥茧般地描述MySQL主从原理,全面地介绍了GTID相关的知识点,并解析了主要Event的生成、作用和格式,以及线程的初步知识、MDL LOCK、排序等热门话题和主从相关的案例。

高鹏(网名八怪),现任中亦安图科技有限公司数据库专家,2008年开始从事Oracle/MySQL相关工作,Oracle OCM、MySQL源码爱好者,知数堂8期学员。有丰富的数据库性能调优、故障诊断经验。

作品目录

  • 专家赞誉
  • 前言
  • 读者服务
  • 第1章 GTID
  • 1.1 GTID的基本概念
  • 1.2 mysql.gtid_executed表、gtid_executed变量、gtid_purged变量的修改时机
  • 1.3 GTID模块初始化简介和参数binlog_gtid_simple_recovery
  • 1.4 GTID中的运维
  • 第2章 Event
  • 2.1 binary log Event 的总体格式
  • 2.2 重点Event之 FORMAT_DESCRIPTION_EVENT和PREVIOUS_GTIDS_LOG_EVENT
  • 2.3 重点Event之GTID_EVENT
  • 2.4 重点Event之QUERY_EVENT和MAP_EVENT
  • 2.5 重点Event之WRITE_EVENT和DELETE_EVENT
  • 2.6 重点Event之UPDATE_EVENT和XID_EVENT
  • 2.7 参数binlog_row_image的影响
  • 2.8 巧用Event发现问题
  • 第3章 主库
  • 3.1 binlog cache简介
  • 3.2 事务Event的生成和写入流程
  • 3.3 MySQL层事务提交流程简析
  • 3.4 基于WRITESET的并行复制方式
  • 3.5 主库的DUMP线程
  • 3.6 DUMP线程查找和过滤GTID的基本算法
  • 第4章 从库
  • 4.1 从库MTS多线程并行回放(一)
  • 4.2 从库MTS多线程并行回放(二)
  • 4.3 MTS中的“gap”测试和参数lave_preserve_commit_order
  • 4.4 从库的I/O线程
  • 4.5 从库的SQL线程(MTS协调线程)和参数sql_slave_skip_counter
  • 4.6 从库数据的查找和参数slave_rows_search_algorithms
  • 4.7 从库的关闭和异常恢复流程
  • 4.8 安全高效的从库设置
  • 4.9 从库Seconds_Behind_Master的计算方式
  • 4.10 Seconds_Behind_Master延迟场景归纳
  • 第5章 案例解析
  • 5.1 线程简介和MySQL调试环境搭建
  • 5.2 MySQL排序详细解析
  • 5.3 MySQL中的MDL Lock简介
  • 5.4 奇怪的FTWRL堵塞案例
  • 5.5 产生大量小relay log故障案例
  • 5.6 从库system lock状态原因简析
展开全部