前言
在开源国产数据库崛起的今天,这本佳作《数据生态:MySQL复制技术与生产实践》,无疑将为MySQL在各行业的推广和使用做出贡献,这也是像我这样的从商业数据库转到开源数据库的从业者的福音。
MySQL能够成为“最流行的开源数据库”,其复制技术起了巨大的作用。Sharing Nothing架构、横向扩展、高可用、容灾、数据集成与聚合,这一系列名词所代表的架构和应用场景都与复制技术有关。多应用场景意味着与复制相关的技术灵活而复杂:异步复制、增强半同步复制、语句级复制、行级复制、按位点复制、GTID复制、多源复制、级联复制、多线程复制、双主架构、一主多从架构、延迟复制、读写分离等。不同的业务场景,使用不同的复制架构,该如何正确地构建MySQL复制拓扑、如何有效地监控和正确地维护,这些都是架构师和DBA要解决的问题。
本书共分为3篇:基础篇、方案篇和参考篇。按照“基本原理”→“生产实践”→“更多参考”的逻辑顺序讲述,书中配了大量的原理与方案示意图,力求用通俗易懂的语言、直观明了的示意图、完整的知识涵盖面将MySQL复制技术讲透。
其中,基础篇侧重介绍主从复制的原理和复制技术的演进,方案篇侧重介绍主从复制技术在生产环境中的应用方案,参考篇侧重介绍二进制日志的基本组成及主从复制中常见对象复制的安全性等。
文档章节
文章分为三个篇章分别为:基础篇,方案篇,参考篇。一共有38个章节,每个章节中又有许多小章节,需要阅读哪个章节可以直接点击跳转,非常方便!
?
需要获取这份资料的小伙伴可以直接转发+关注后私信(666)即可免费获取到这份MySQL文本!
基础篇
第一章复制的概述
- 1.1 适用场景
- 1.2 数据同步方法
- 1.3 数据同步类型
- 1.4 复制格式
第二章复制的基本原理
- 2.1 概述
- 2.2 细节
第三章复制格式详解
- 3.1 复制格式概述
- 3.2 复制格式明细
- 3.3 如何确定与记录复制中的安全与不安全语句
第四章传统复制与GTID复制
- 4.1 传统复制
- 4.2 GTID复制
第五章 半同步复制
- 5.1 半同步复制的原理
- 5.2 半同步复制的管理接口
- 5.3 半同步复制的监控
- 5.4 半同步复制的注意要点
第六章 多线程复制
- 6.1 单线程复制原理
- 6.2 DATABASE多线程复制
- 6.3 LOGICAL_CLOCK多线程复制
- 6.4 WRITESET多线程复制
第七章 多源复制
- 7.1 复制通道
- 7.2 单通道操作命令
- 7.3 复制语句的向前兼容性
- 7.4 启动选项和复制通道选项
- 7.5 复制通道的命名约定
第八章 从库中继日志和状态日志
- 8.1 中继日志和状态日志概述
- 8.2 从库中继日志
- 8.3 从库状态日志
第九章 通过PERFORMANCE_SCHEMA库检查复制信息
- 9.1 PERFORMANCE_SCHEMA库中的复制信息记录表概述
- 9.2 PERFORMANCE_SCHEMA库中的复制信息记录表详解
第十章 通过其他方式检查复制信息
- 10.1 复制状态变量
- 10.2 复制心跳信息
- 10.3 SHOW SLAVE STATUS语句输出信息详解
- 10.4 通过SHOW?PROCESSLIST语句查看复制线程状态
- 10.5?SHOW MASTER STATUS语句输出详解
- 10.6?SHOW SLAVE HOSTS语句
第十一章 MySQL复制延迟Seconds_Behind_Master究竟是如何计算的
- 11.1 “口口相传”的计算方式
- 11.2 探寻“正确”的计算方式
- 11.3 验证
- 11.4 小结
第十二章 如何保证从库在意外中止后安全恢复
- 12.1 从库的崩溃与恢复概述
- 12.2 从库的崩溃与恢复详解
第十三章 MySQL Server 复制过滤
- 13.1 MySQL Server复制过滤规则概述
- 13.2 库级别复制过滤选项的评估
- 13.3 表级别复制过滤选项的评估
- 13.4 复制过滤规则的应用
方案篇
第十四篇 搭建异步复制
- 14.1 操作环境信息
- 14.2 全新初始化场景
- 14.3 已有数据场景
- 14.4 变量模板
第十五章 搭建半同步复制
- 15.1 半同步复制插件的安装和配置环境要求
- 15.2 半同步复制插件的安装和配置
- 15.3 半同步复制工作状态的验证
第十六章 通过扩展从库以提高复制性能
- 16.1 操作环境
- 16.2 横向扩展
- 16.3 提高复制性能
第十七章 复制模式的切换
- 17.1 操作环境信息
- 17.2 复制模式的相关概念
- 17.3 传统复制在线变更为GTID复制
- 17.4 GTID复制在线变更为传统复制
- 17.5 GTID复制离线变更为传统复制
- 17.6 传统复制离线变更为GTID复制
第十八章 复制拓补的在线调整
- 18.1 操作环境信息
- 18.2 传统复制模式下的复制拓补在线调整
- 18.3 GTID复制模式下的复制拓补在线调整
第十九章 主从实例的例行切换
- 19.1 操作环境信息
- 19.2 在线切换
第二十章 数据库故障转移
- 20.1 操作环境信息
- 20.2 主库故障转移的关键步骤
- 20.3 主库故障转移额详细过程
第二十一章 搭建多源复制
- 21.1 操作环境信息
- 21.2 基于传统复制的多源复制
- 21.3 基于GTID复制的多源复制
- 21.4 多源复制拓补中复制相关的操作语句变化
第二十二章 MySQL版本升级
- 22.1 MySQL 版本之间的复制兼容性
- 22.2 升级复制的设置
?
第二十三章 将不同数据库的数据复制到不同实例
- 23.1 操作环境信息
- 23.2 通过设置复制过滤规则将不同数据库的数据复制到不同实例
第二十四章 发生数据误操作之后的处理方案
- 24.1 操作环境信息
- 24.2 主库发生误操作后的数据恢复
- 24.3 从主库发生误操作后的数据恢复
第二十五章 常用复制故障排除方案
- 25.1 确认故障现象
- 25.2 信息收集与故障排查
- 25.3 复制故障的修复
- 25.4 无法解决的问题
参考篇
第二十六章 二进制日志文件的基本组成
- 26.1 什么是二进制日志
- 26.2 二进制日志的组成
- 26.3 二进制日志内容解析
- 26.4 小结
第二十七章 常规DDL操作解析
- 27.1 操作环境信息
- 27.1 常规DDL操作实例
- 27.3 二进制日志内容解析
- 27.4 小结
第二十八章 为何二进制日志中同一个事务的事件时间点会乱序
- 28.1 操作环境信息
- 28.2 验证前的准备
- 28.3 验证过程
第二十九章 复制AUTO_INCREMENT字段
- 29.1 操作环境信息
- 29.2 复制AUTO_INCREMENT字段的操作示例
- 29.3 对二进制日志的解析及解释
- 29.4 使用AUTO_INCREMENT字段时的注意事项
- 29.5 小结
第三十章 复制CREATE...IF NOT EXISTS语句
- 30.1 操作环境信息
- 30.2 复制CREATE...IF NOT EXISTS语句的操作演示
- 30.3 二进制日志解析结果的解释
- 30.4 小结
第三十一章 复制CREATE TABLE ... SELECT语句
- 31.1 操作环境信息
- 31.2 复制CREATE TABLE ... SELECT语句的操作实例
- 31.3 二进制日志的解析及解释
- 31.4 使用CREATE TABLE ... SELECT语句时的注意事项
- 31.5 小结
第三十二章 从主复制中使用不同的表定义
- 32.1 操作环境信息
- 32.2 主从库的表字段数不同时如何复制
- 32.3 不同类型字段的复制
- 32.4 小结
第三十三章 复制中的调用功能
- 33.1 操作环境信息
- 33.2 复制中调用功能操作示例
- 33.3 二进制日志额解析及解释
- 33.4 小结
第三十四章 复制LIMIT子句
- 34.1 操作环境信息
- 34.2 复制LIMIT子句的操作示例
- 34.3 二进制日志的解析及解释
- 34.4 小结
第三十五章 复制LOAD DATA语句
- 35.1 操作环境信息
- 35.2 复制LOAD DATA语句的操作示例
- 35.3 二进制日志的解析及解释
- 35.4 小结
第三十六章 系统变量max_allowed_packet对复制的影响
- 36.1 系统变量简介
- 36.2 操作环境信息
- 36.3 max_allowed_packet对复制的影响操作示例
- 36.4 小结
第三十七章 复制临时表
- 37.1 操作环境信息
- 37.2 复制临时表的操作示例
- 37.3 与临时表相关的其他注意事项
- 37.4 小结
第三十八章 复制中的事务不一致问题
- 38.1 事务不一致的场景类型
- 38.2 事务不一致的原因
- 38.3 事务不一致的后果
- 38.4 小结
需要获取这份资料的小伙伴可以直接转发+关注后私信(666)即可免费获取到这份MySQL文本!?
|