广告位不存在!
详情 声明
商品详情

资源名称:MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践


内容简介:

《MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践》是一本介绍MySQL数据库知识的专业书籍,从核心原理到最佳实践,深入浅出、抽丝剥茧地进行讲解,不仅从源码和运维两个角度介绍了MySQL大部分重要概念和运维要点,还讲述了MySQL极为优秀的集群组件Galera的实现原理和运维经验,同时,也介绍了作者独立开发的MySQL审核系统Inception的设计、实现与功能。

《MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践》也得到了MySQL官方研发团队的大力支持,两位资深专家分别介绍了MySQL最新的支持NoSQL的组件MySQL Document Store,以及集群化组件MySQL Group Replication的实现原理和运维要点。

《MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践》不仅可以作为技术管理者和架构师在设计MySQL相关应用和系统时的参考,还适合MySQL应用开发者更深入地了解和使用MySQL。最后,作为MySQL DBA的必备参考,希望《MySQL运维内参:MySQL、Galera、Inception核心原理与最佳实践》能在实际工作中对读者有所帮助。


资源目录:

第一部分 MySQL篇

1 MySQL源代码入门

MySQL源代码的组织结构

Linux下的编译

安装MySQL库

MySQL 5.7权限处理

2 MySQL启动过程

3 连接的生命与使命

用户连接线程创建

MySQL处理请求

总结

4 MySQL表对象缓存

表结构的实现原理

涉及的参数变量

优缺点总结

存在的问题

5 InnoDB初探

InnoDB的源代码目录结构

InnoDB存储引擎文件组织

InnoDB体系结构

InnoDB存储引擎启动与关闭

- - InnoDB 存储引擎的启动

- - InnoDB存储引擎的关闭

6 InnoDB数据字典

背景

系统表结构

字典表加载

Rowid管理

总结

7 InnoDB数据存储结构

表空间文件组成结构

- - 段

- - 簇

- - 页面

段、簇、页面组织结构

8 InnoDB索引实现原理

背景

B+树及B树的区别

索引的设计

聚簇索引和二级索引

二级索引指针

神奇的B+树网络

InnoDB索引的插入过程

一个页面至少要存储几条记录

页面结构管理

- - 文件管理头信息

- - 页面头信息

- - 最小记录和最大记录

- - 页面数据空间管理

- - 经典的槽管理

- - 页面尾部

- - 页面重组

索引页面的回收

9 InnoDB记录格式

背景

从源码入手了解行格式

总结

10 揭秘独特的两次写

单一页面刷盘

批量页面刷盘

- - 两次写组织结构

- - 批量刷盘两次写实现原理

两次写的作用

发散思维

总结

11 InnoDB日志管理机制

InnoDB Buffer Pool

REDO LOG日志文件管理的用途

MTR InnoDB物理事务

日志的意义

日志记录格式

日志刷盘时机

REDO日志恢复

数据库回滚

- - 数据库UNDO段管理

- - 数据库UNDO日志记录格式

- - 回滚时刻

总结

12 MySQL 5.7中崭新的MySQL sys Schema

Performance Schema的改进

sys Schema介绍

- - sys Schema视图摘要

- - sys Schema重点视图与应用场景

- - 使用风险

总结

13 方便的MySQL GTID

GTID 相关概念

- - 什么是GTID

- - GTID集合

- - GTID生命周期

GTID的维护

- - gtid_executed表

- - gtid_executed表压缩

GTID搭建主从

- - 搭建主从时,需要注意的MySQL参数

- - 开启GTID

- - 搭建主从

使用GTID案例总结

- - 如何跳过一个GTID

- - 利用GTID模式快速改变主从复制关系

- - 在线将传统模式复制改为GTID模式复制

- - 在线将GTID模式复制改为传统模式复制

GTID的限制

14 MySQL半同步复制

半同步特性

半同步主库端

半同步从库端

半同步实现

插件安装

半同步自动开关

15 MySQL 5.7多线程复制原理

背景

行之有效的延迟优化方法

MySQL 5.6的多线程复制

MySQL 5.7的多线程复制

- - ordered commit

- - 多线程复制分发原理

- - 异常故障恢复

16 大量MySQL表导致服务变慢的问题

背景

问题分析

案例解决

总结

17 MySQL快速删除大表

背景

问题分析

案例解决

发散思维

总结

18 两条不同的插入语句导致的死锁

背景

问题分析

发散思维

总结

19 MySQL在并发删除同一行数据时导致死锁的分析

背景

问题分析

发散思维

总结

20 参数SQL_SLAVE_SKIP_COUNTER的奥秘

21 Binlog中的时间戳

背景

问题分析

发散思维

事务中的事件顺序

问题延伸

show processlist中的Time

总结

22 InnoDB中Rowid对Binlog的影响

背景

问题分析

总结

23 MySQL备份:Percona XtraBackup的原理与实践

备份背景及类型

认识Percona XtraBackup

XtraBackup的工作流程

XtraBackup的备份原理

XtraBackup 需要的权限

innobackupex常用的备份选项说明

XtraBackup备份实践

- - 全量备份

- - 增量备份

- - 并行备份

- - 其他备份

案例实践与心得

建议与提醒

24 MySQL分库分表

分库分表的种类

分库分表的原则

分库分表实现

- - 数据库层的实现

- - 业务层的实现

25 MySQL数据安全

单机安全

集群安全

备份安全

MySQL实例安全保证

- - Double Write

- - REDO LOG

MySQL集群安全保证

- - 传统的主从模式如何保证数据库安全

- - Semi_Sync Replication方式的复制

- - MySQL集群化如何保证数据库安全

总结

26 MySQL 性能拾遗

适当的数据文件大小

- - 碎片空洞问题

- - 设计问题

合理设计表结构

- - 冗余存储

- - 拆分存储

- - 重复存储

- - 特别提醒

正确使用索引

MySQL系统参数

内存和CPU

磁盘的革命

云中漫步

总结

27 MySQL Group Replication

Group Replication概述

- - 组的概念

- - 多主复制

- - 单独的通信机制

Group Replication服务模式

- - 单主模式

- - 多主模式

- - 服务模式的配置

Binlog Event的多线程执行

- - group_replication_applier通道

- - 基于主键的并行执行

搭建Group Replication复制环境

- - MySQL的参数设置

- - Group Replication插件的使用

- - Group Replication插件的基本参数设置

- - Group Replication的数据库用户

- - Group Replication组初始化

- - 新成员加入组

Group Replication的高可用性

- - 组内成员数量的变化

- - 强制移除故障成员

Group Replication的监控

Group Replication的基本原理

- - 状态机复制

- - 分布式的状态机复制

- - 分布式的高可用数据库

深入理解Group Replication中事务的执行过程

- - 本地事务控制模块

- - 成员间的通信模块

- - 全局事务认证模块

- - 异地事务执行模块

- - 事务流程的总结

深入理解成员加入组的过程

- - 组视图

- - 加入组时视图的切换

- - View_change_log_event

- - 恢复

28 MySQL Document Store面面观

新的JSON数据类型和JSON函数

- - JSON数据类型

- - JSON函数详解

- - JSON函数的运用

MySQL X Plugin 和 X Protocol

- - 支持NoSQL所做的努力

- - 安装MySQL X Plugin

MySQL Shell

- - 安装MySQL Shell

- - 运行MySQL Shell

- - 在MySQL Shell中操作JSON文档

- - 用脚本执行MySQL Shell

X DevAPI

总结

参考资料

第二部分 Galera篇

29 Galera Cluster的设计与实现

Galera Cluster的优点

Galera的引入

Galera接口

总结

30 Galera 参数解析

状态参数

变量参数

31 Galera的验证方法

Binlog与Galera的关系

验证方法

32 Galera的消息传送

33 GCache实现原理

配置参数

实现原理

发散思维

34 大话SST/IST细节

初始化节点环境

连接到集群并且做SST/IST

如何提供增量数据

总结

35 Donor/Desynced详解

实现方式

意义何在

问答环节

36 Galera的并发控制机制

数据复制

写集验证

写集APPLY

事务Commit

37 Galera的流量控制

流量控制的定义

流量控制的实现原理及影响

两个问题

38 Galera Cluster影响单节点执行效率的因素

单点验证

并发控制

等待GTID

总结

39 grastate.dat文件揭秘

引子

分析研究

总结

40 Galera Cluster从库的转移

没有开启Server级GTID的情况

开启了GTID(server级)的情况

总结

41 Galera Cluster节点与其从库的随意转换

背景

从节点向PXC节点的转换

PXC节点向异步从节点的转换

42 业务更新慢,不是由Galera引起的

43 在线改表引发的Galera Cluster集群死锁

背景

用Binlog来代替触发器

表名交换

Galera Cluster中的问题

一个有趣的实验

解决方案

总结

第三部分 Inception篇

44 Inception诞生记

关于SQL审核

- - 半自动化方法

人肉法

不满现状的追求

何谓Inception

45 Inception安装与使用

下载和编译

启动配置

线上配置需求

需要额外注意的点

使用方法

举例说明

环境变量的设置

46 支持选项

选项说明

DDL与DML语句分离

小技巧

47 Inception的备份回滚

备份存储架构

备份所需条件

48 审核规范

支持的语句类型

公共检查项

插入语句检查项

更新、删除语句检查项

表属性检查项

列属性检查项

索引属性检查项

修改表语句检查项

总结

49 参数变量

语法和变量

注意事项

50 友好的结果集

结果集结构

总结

51 命令集语句

远程信息获取

显示本地全部变量

显示本地某个变量

设置本地变量

显示OSC执行进度

查看当前processlist

52 Inception的彩蛋

对OSC的支持

- - 可选的OSC参数

- - 查看OSC的执行进度

- - 中止OSC的执行

- - 查看所有OSC执行信息

Inception对SQL执行情况的统计

打印语法树

53 Inception设计

Inception之源

Inception执行流程


资源截图:

1.png

声明

1、链接失效请联系客服人员。
2、购买后如果链接失效可联系客服人员完善资源或进行退款办理。
3、资源均来源于网友分享及网络公开发表文件,所有资料仅供学习交流。
4、所收取费用仅用来维系网站运营,性质为用户友情赞助,并非售卖文件费用。
5、如侵犯您的权益,请联系客服人员,我们将会在第一时间进行处理。

相关推荐