美文网首页互联网科技Java高级架构SpringFramework
阿里SQL又爆神作数据生态:MySQL复制技术与生产实践笔记

阿里SQL又爆神作数据生态:MySQL复制技术与生产实践笔记

作者: 我真的写不动了 | 来源:发表于2020-11-29 20:50 被阅读0次

    继《myqs千金良方》之后又爆神作:

    在开源国产数据库崛起的今天,这本佳作《数据生态:MySQL复制技术与生产实践》,无疑将为MySQL在各行业的推广和使用做出贡献,这也是像我这样的从商业数据库转到开源数据库的从业者的福音。

    MySQL能够成为“最流行的开源数据库”,其复制技术起了巨大的作用。Sharing Nothing架构、横向扩展、高可用、容灾、数据集成与聚合,这一系列名词所代表的架构和应用场景都与复制技术有关。多应用场景意味着与复制相关的技术灵活而复杂:异步复制、增强半同步复制、语句级复制、行级复制、按位点复制、GTID复制、多源复制、级联复制、多线程复制、双主架构、一主多从架构、延迟复制、读写分离等。不同的业务场景,使用不同的复制架构,该如何正确地构建MySQL复制拓扑、如何有效地监控和正确地维护,这些都是架构师和DBA要解决的问题。

    本书专注于MySQL复制特性,从基本概念和原理着手,再到实践操作、复制架构的方案、常见故障案例等方面,也涵盖了传统复制架构下最新的半同步复制、多源复制、多线程复制等内容,可谓MySQL复制特性的全面指南。

    要系统地学习和研究一个课题,按照由浅入深的顺序,我们可以将其过程大致分为如下三个阶段:

    第一阶段:认识整体

    对于一个复杂课题,可以先从整体上搞清楚它的知识体系组成框架,搞清楚其中各个组成部分(知识模块)的大致脉络,从而从全局上建立起初步认知,以便为下一阶段选择知识模块进行深入研究做好铺垫。

    第二阶段:逐一深入

    基于第一阶段的整体认识,可以优先选择一些工作中需要用到的知识模块,或者感兴趣的知识模块,作为子课题逐一进行深入的系统研究。

    第三阶段:回归整体

    由于人的精力有限,在第二阶段,深入研究各知识模板期间,一些知识模块可能会被遗忘,因此需要回归整体,结合自己的验证与理解,建立牢固的知识体系。

    MySQL的数据生态

    MySQL的二进制日志记录了一个数据库实例内数据的变更,这些内容是按照时间的先后顺序记录的。根据具体的二进制日志格式选项设置,可以记录数据库实例内执行的原始SQL语句文本,也可以记录数据库实例内执行SQL语句时产生的数据变更的行记录值。二进制日志可以满足类似如下一些应用场景:

    1.MySQL Server崩溃之后对其进行恢复时,二进制日志作为事务的协调者。

    2.在不同实例间进行数据同步(主从复制、组复制)。

    3.数据异地容灾。

    4.恢复被误删除的数据(通常称为“数据闪回”)。

    5.数据在异构数据库之间流转。

    二进制日志独有的特性是MySQL数据流动与循环的基石,在不同应用场景下形成了独特的“数据生态”,这也是本书名字的由来。

    需要获取的小伙伴可以直接转发+关注后私信(学习)即可免费获取

    点击链接耽误你十几秒钟用VX免费订阅/免费报名成功后截个图给我统计下,不需要填写其他信息,vx登录就好了

    全书分为“基础篇”“方案篇”“参考篇”,其中:

    “基础篇”对MySQL主从复制技术的用途、概念、基本原理及演进等进行全方位的介绍。

    第1章复制的概述

    1.1适用场景

    1.2数据同步方法

    1.3 数据同步类型

    1.4复制格式

    第2章复制的基本原理

    2.1概述

    2.2细节

    第3章复制格式详解

    3.1复制格式概述

    3.2复制格式明细

    3.3如何确定与记录复制中的安全和不安全语句

    第4章传统复制与GTID复制

    4.1传统复制

    4.2 GTID复制

    第5章半同步复制

    5.1 半同步复制的原理

    5.2半同步复制的管理接口

    5.3半同步复制的监控

    5.4半同步复制的注意要点

    第6章多线程复制

    6.1单线程复制原理

    6.2 DATABASE多线程复制

    6.3 LOGICAL_CLOCK多线程复制

    6.4 WR工TESET多线程复制

    第7章多源复制

    7.1复制通道

    7.2单通道操作命令

    7.3复制语句的向前兼容性

    7.4启动选项和复制通道选项

    7.5复制通道的命名约定

    第8章从库中继日志和状态日志

    8.1中维日志和状态日志概述

    8.2从库中继日志

    8.3从库状态日志

    第9章通过PERFORMANCE_SCHEMA库检查复制信息

    9.1 PERFOEMANCE_SCHEMA库中的复制信息记录表概述

    9.2 PERFOEMANCE_SCHEMA库中的复制信息记录表详解

    第10章通过其他方式检查复制信息

    10.1复制状态变里

    10.2复制心跳信息

    10.3SH0Ow SLAVE STATUS语句输出信息详解

    10.4通过SH0OW FROCESSI.IST语句查看复制线程状态

    10.5SH0 MASTEESTATUS语句输出详解

    10.6 SHOw SLAVE HOSTs语句

    第11章MySQL复制延迟seconds_Behind_Master究竟是如何计算的

    11.1 “口口相传"”的计算方法

    11.2探寻“正确”的计算方法

    11.3验证

    11.4小结

    第12章如何保证从库在意外中止后安全恢复

    12.1从库的崩溃与恢复概述

    12.2从库的崩溃与恢复详解

    第13章MySQL Server复制过滤

    13.1 MySQL Server夏制过滤规则]概述

    13.2库级别复制过滤选项的评估

    13.3表级别复制过滤选项的评估

    13.4复制过滤规则的应用

    “方案篇”对MySQL主从复制技术在生产中的应用场景、复制拓扑的生命管理周期、高可用切换与主库故障转移等进行全方位的介绍。

    第14章搭建异步复制

    14.1操作环境信息

    14.2全新初始化场景

    14.3已有数据场景

    14.4变里模板

    第15章搭建半同步复制

    15.1半同步复制插件的安装和配置环境要求

    15.2半同步复制插件的安装和配置

    15.3半同步复制工作状态的验证

    第16章通过扩展从库以提高复制性能

    16.1操作环境

    16.2横向扩展

    16.3提高复制性能

    第17章复制模式的切换

    17.1操作环境信息

    17.2复制模式的相关概念

    1 7.3 传统复制在线变更为GTID复制

    17.4 GTID复制在线变更为传统复制

    17.5GTID复制离线变更为传统复制

    17.6传统复制离线变更为GTID复制

    第18章复制拓扑的在线调整

    18.1操作环境信息

    18.2传统复制模式下的复制拓扑在线调整

    18.3GTID夏制模式下的复制拓扑在线调整

    第19章主从实例的例行切换

    19.1操作环境信息

    19.2在线切换

    第20章数据库故障转移

    20.1操作环境信息

    20.2主库故障转移的关键步骤

    20.3主库故障转移的详细过程

    第21章搭建多源复制

    21.1操作环境信息

    21.2基于传统复制的多源复制

    21.3基于GTID复制的多源复制

    21.4多源复制拓扑中复制相关的操作语句变化

    第22章MySQL版本升级

    22.1 MySQL版本之间的复制兼容性

    22.2升级复制的设置

    第23章将不同数据库的数据复制到不同实例

    23.1操作环境信息

    23.2通过设置复制过滤规则将不同数据库的数据复制到不同实例

    第24章发生数据误操作之后的处理方案

    24.1操作环境信息

    24.2主库发生误操作后的数据恢复

    24.3从库发生误操作后的数据恢复

    第25章常用复制故障排除方案

    25.1确认故障现象

    25.2信息收集与故障排查

    25.3复制故障的修复

    25.4无法解决的问题

    “参考篇”对MySQL二进制日志的基本组成结构、常见的复制对象在主从复制拓扑中的流转过程等进行全方位的介绍。

    第26章二进制日志文件的基本组成

    26.1什么是二进制日志

    26.2二进制日志的组成

    26.3 二进制日志内容解析

    26.4小结

    第27章常规DDL操作解析

    27.1操作环境信息

    27.2常规DDL操作示例

    27.3二进制日志内容解析

    27.4小结

    第28章为何二进制日志中同一个事务的事件时间点会乱序

    28.1操作环境信息

    28.2验证前的准备

    28.3 验证过程

    第29章复制AUTO_INCREMEHT字段

    29.1操作环境信息

    29.2复制AUTO_INCREMEHT字段的操作示例

    29.3 对二进制日志的解析及解释

    29.4使用AUTO_工HCREMEHT字段时的注意事项

    29.5小结

    第3O章复制CREATE ... IF NOT EXISTS语句

    30.1操作环境信息

    30.2夏制CREATE ... IF OT EXISTs语句的操作演示

    30.3 二进制日志解析结果的解释

    30.4小结

    第31章复制CEREATE TABL.E ... SEL.ECT语句

    31.1操作环境信息

    31.2复制CREATE TABLE ... SEL.ECT语句的操作示例

    31.3二进制日志的解析及解释

    31.4 使用CREATE TABL.E ... SEL.ECT语句时的注意事项

    31.5小结

    第32章在主从复制中使用不同的表定义

    32.1操作环境信息

    32.2主从库的表字段数不同时如何复制

    32.3不同类型字段的复制

    32.4小结

    第33章复制中的调用功能

    33.1操作环境信息

    33.2夏制中的调用功能操作示例

    33.3二进制日志的解析及解释

    33.4小结

    第34章复制LIMIT子句

    34.1操作环境信息

    34.2复制I.IMIT子句的操作示例

    34.3二进制日志的解析及解释

    34.4小结

    第35章复制IDADDATA语句

    35.1操作环境信息

    35.2复制LOAD DATAi语句的操作示例

    35.3 二进制日志的解析及解释

    35.4小结

    第36章系统变里max_allowed_packet对复制的影响

    36.1系统变里简介

    36.2操作环境信息

    36.3 max_allowed_packet对复制的影响操作示例

    36.4小结

    第37章复制临时表

    37.1操作环境信息

    37.2夏制临时表的操作示例

    37.3与临时表相关的其他注意事项

    37.4小结

    第38章复制中的事务不一致问题

    38.1事务不一致的场景类型

    38.2事务不—致的原因

    38.3事务不一致的后果

    38.4小结

    需要获取这份资料的小伙伴可以直接转发+关注后私信(学习)即可免费获取!

    相关文章

      网友评论

        本文标题:阿里SQL又爆神作数据生态:MySQL复制技术与生产实践笔记

        本文链接:https://www.haomeiwen.com/subject/hktlwktx.html