发表于2024-11-22
资深数据库专家十年沉淀
详细解析MySQL数据库体系结构
技术问答,助力面试
目前大部分软件开发平台都基于Linux,很多互联网公司都把MySQL作为后端数据存储的数据库。如果把MySQL比喻成数据库界的一条巨龙,则本书涵盖的所有知识点就是这条巨龙的组成部分。
本书深入剖析MySQL数据库体系结构,实战演练备份恢复、主从复制,详解高可用集群架构的设计与实践过程,详细梳理优化思路,展现新版本的特性,并与真实生产案例相结合,通过核心原理到“王者”实战,全面覆盖MySQL数据库的知识点。
本书适合熟悉Linux系统且想提升MySQL水平的读者。
在这个时代,能安安静静去读一本书的机会越来越少,能踏踏实实去深入研究技术的人也越来越少,这就越发显出可以忍耐孤独寂寞、倾心写作的人的难能可贵。在亲身经历过艰苦而漫长的实践之后,我也越来越敬仰那些笔耕不辍、钟情翰墨的作者们。
初识张甦,我就有一见如故的亲切感。当知道他已经在MySQL领域默默耕耘多年,自己培养出了一批又一批的学生的时候,我更是敬佩不已。在繁忙的工作中,还能抽出时间完成本书的编写,这是需要勇气和毅力的。
本书是对MySQL基础知识的全面解析,也是他多年工作和教学经验的结晶,其内容几乎涵盖了初学者对MySQL知识需求的方方面面,是一本非常值得学习的MySQL著作,本书将会带你进入MySQL的神奇殿堂。在我看来本书更是拙作《MySQL运维内参》的黄金搭档,一个用于知识点的全面普及,一个用于深入了解MySQL的内参指导,但愿二者结合,能够帮助所有愿意学习和使用MySQL的人。
周彦伟
《MySQL运维内参》作者、中国MySQL用户组主席
总体来说,市面上MySQL类的经典书不多,其中一个重要原因就是MySQL DBA的工作内容大而全,充分享受了开源红利,理论学习和工作实践还是存在差别的。无论是学习MySQL,还是学习Oracle,数据库体系结构都是重中之重,需要在实践中不断总结,这一点我和作者的观点吻合。
作者收集整理了自己多年的一线经验,以一种轻松明快的文风来讲述MySQL体系结构和运维相关知识。通过本书,不仅能对MySQL知识体系有一个全面的了解,还能够一窥一线DBA的工作内容和技巧,相信会带给你一些新的思考和方向。
杨建荣
DBAplus社群发起人,Oracle ACE,《Oracle DBA工作笔记》作者
感谢张甦邀请,在拿到这本书大纲的时候,我问了张甦一个问题:“你写这本书的初心是什么?”答曰:“我想将自己近十年的数据库运维经验和授课感悟写给那些刚跨入此领域的学生们。”对此,我深有同感,从业十余年,我发现数据库DBA这个圈子大部分都是半路出家的,很少有人在学校里面就决定了自己要做DBA,要从事数据库相关领域的工作,更多的是随着工作职责的变更,通过自学从而走上这条路的。我认识的朋友中有从开发转DBA的,也有从运维转DBA的,大部分的情况都是数据库没有专人管理,开始是兼顾,后期慢慢就转型成了专职的DBA了。
而在这个过程中,不免会走很多的弯路,尤其是在十年前那个信息匮乏、交流不便的年代,出了问题不知道是什么原因导致的,面对需求没有什么相关的解决方案可以参考,他人的经验更是寥寥无几。目前这个时代正是信息大爆炸的时代,数据库也不再那么神秘,我们可以从各个渠道获取相关的知识,可以看同样的case别人是怎么解决的,相同的问题别的公司是怎么处理的,那么我们为什么还需要MySQL类的书籍呢?这也是我的第二个疑问,我同样问了张甦,他是这么回答的:“这本书包含了我近十年的工作经验总结,涵盖了我能想到的MySQL的各个方面,对于初学者来说是很好的入门书籍。”
我翻阅了大纲,这本书从安装下载、部署启动,到参数、索引、锁、事务等MySQL常用和不常用的知识点都有详细介绍,描述得非常直白,并配有详细的案例,确实非常适合入门级读者进行学习。我们从业者常见的分享经常会忽略一些基础概念的解释和介绍,默认受众已经知道了这部分内容,而张甦这本书完全假设受众为零基础的读者,深入浅出地介绍了MySQL的相关知识,建议作为MySQL的入门书籍。
最后,数据库DBA在人数上属于较为小众的职业,但是选择了这个职业的人都是比较有趣的,如果你也选择了这个职业,希望我们共同将其发扬光大,让更多的人理解这个职业。
肖鹏
微博研发中心 技术副总监
随着互联网时代的兴起,MySQL在数据库领域日益显现出举足轻重的地位,它不断扩大的用户群体就是很好的证明。在这样的背景下,需要越来越多的人在知识资源方面为之付出,将自己对MySQL数据库的学习过程、运维经验、个人理解等记录下来,为行业中的后来者燃起一盏明灯,让他们少走一些弯路。
这正是本书写作的初衷。书中汇集了作者多年来在MySQL运维及教学过程中不断总结、不断思考的成果,内容丰富、体例清晰。不仅有对基础知识的阐述,比如MySQL作为一个关系型通用数据库所具备的模块、组织架构、功能及特点等,还有对实际操作的指导,比如告诉你在运维中应该重点关注什么,如何控制数据库的行为,如何解决问题等,旨在让读者对数据库有一个更深入的理解。本书深入浅出,语言平实又不乏幽默,轻快又不失严谨,是一本值得学习的好书。相信开卷有益,每位读者都能在轻松畅快的阅读中有意外的收获。
王竹峰
去哪儿网数据库总监 Oracle MySQL ACE
第1部分 倔强青铜篇
第1章 MySQL简介与主流分支版本
1.1 MySQL简介
1.2 MySQL主流的分支版本
1.2.1 官方版本的MySQL
1.2.2 Percona Server
1.2.3 MariaDB
第2章 MySQL数据库的安装、启动和关闭
2.1 下载MySQL二进制软件包
2.2 安装前系统环境检测
2.3 MySQL 5.6版本的安装过程
2.4 创建密码
2.5 关闭MySQL数据库
2.6 基础数据库的名称
2.7 MySQL 5.7版本的安装
2.8 MySQL数据库root密码丢失的问题
2.9 MySQL数据库的连接方式
2.10 用户权限管理
第3章 MySQL体系结构与存储引擎
3.1 MySQL体系结构
3.2 Query Cache详解
3.3 存储引擎
3.4 InnoDB体系结构
3.4.1 数据库和数据库实例
3.4.2 InnoDB存储结构
3.4.3 内存结构
3.4.4 Buffer状态及其链表结构
3.4.5 各大刷新线程及其作用
3.4.6 内存刷新机制
3.4.7 InnoDB的三大特性
第4章 数据库文件
4.1 参数文件
4.2 参数类型
4.3 错误日志文件(error log)
4.4 二进制日志文件(binary log)
4.5 慢查询日志(slow log)
4.6 全量日志(general log)
4.7 审计日志(audit log)
4.8 中继日志(relay log)
4.9 Pid文件
4.10 Socket文件
4.11 表结构文件
4.12 InnoDB存储引擎文件
第5章 表
5.1 整型
5.2 浮点型
5.3 时间类型
5.4 字符串类型
5.5 字符集
5.6 表碎片产生的原因
5.7 碎片计算方法及整理过程
5.8 表统计信息
5.9 统计信息的收集方法
5.10 MySQL库表常用命令总结
第6章 索引
6.1 二叉树结构
6.2 平衡二叉树结构
6.3 B-tree结构
6.4 B+tree
6.4.1 聚集索引和普通索引
6.4.2 ICP、MRR和BKA
6.4.3 主键索引和唯一索引
6.4.4 覆盖索引
6.4.5 前缀索引
6.4.6 联合索引
6.5 哈希索引
6.6 索引的总结
第7章 事务
7.1 事务的特性
7.2 事务语句
7.3 truncate和delete的区别
7.4 事务的隔离级别
7.5 细说脏读、不可重复读、幻读、可重复读现象
7.5.1 脏读
7.5.2 不可重复读与幻读
7.5.3 可重复读
第8章 锁
8.1 InnoDB的锁类型
8.1.1 读锁
8.1.2 写锁
8.1.3 MDL锁
8.1.4 意向锁
8.2 InnoDB行锁种类
8.2.1 单个行记录的锁
8.2.2 间隙锁(GAP lock)
8.2.3 Next-key Locks
8.3 锁等待和死锁
8.4 锁问题的监控
第2部分 秩序白银篇
第9章 备份恢复
9.1 MySQL的备份方式
9.2 冷备及恢复
9.3 热备及恢复
9.3.1 mysqldump的备份与恢复
9.3.2 select …into outfile
9.3.3 load data与insert的插入速度对比
9.3.4 mydumper
9.3.5 裸文件备份XtraBackup
9.4 流式化备份
9.4.1 非压缩模式的备份
9.4.2 压缩模式的备份
9.4.3 远程备份
9.5 表空间传输
9.6 利用binlog2sql进行闪回
9.7 binlog server
9.8 总结
第3部分 荣耀黄金篇
第10章 主从复制概述
10.1 常见的几种主从架构模式图
10.2 主从复制功能
10.3 主从复制原理
10.4 复制中的重点参数详解
第11章 复制原理及实战演练
11.1 异步复制
11.2 主从复制故障处理
11.3 半同步复制
11.4 半同步复制和异步复制模式的切换
11.5 GTID 复制
11.5.1 GTID原理介绍
11.5.2 GTID存在的价值
11.5.3 主从复制中GTID的管理与维护
11.5.4 GTID复制与传统复制的切换
11.5.5 GTID使用中的限制条件
11.6 多源复制
11.7 主从延迟的解决方案及并行复制
11.8 主从复制的数据校验
11.9 总结
第4部分 尊贵铂金篇
第12章 MHA
12.1 MHA简介
12.1.1 MHA部署
12.1.2 MHA原理
12.1.3 MHA的优缺点
12.1.4 MHA工具包的功能
12.2 实战演练
第13章 Keepalived+双主架构
13.1 Keepalived介绍
13.2 集群搭建思路及建议
13.3 实验部署演练
第14章 PXC
14.1 PXC原理
14.2 PXC架构的优缺点
14.3 PXC中重要概念和重点参数
14.4 PXC架构搭建实战
14.5 PXC集群状态的监控
14.6 从节点在线转化为PXC节点
第15章 ProxySQL
15.1 ProxySQL的安装与启动
15.2 配置ProxySQL监控
15.3 ProxySQL的多层配置系统
15.4 配置ProxySQL主从分组信息
15.5 配置读写分离策略
15.6 测试读写分离
15.7 总结
第5部分 永恒钻石篇
第16章 MySQL 5.7新特性
16.1 InnoDB存储引擎的增强
16.2 其他方面的增强
第17章 MySQL全面优化
17.1 硬件优化
17.2 配置参数优化
17.3 从Linux操作系统层面来谈对MySQL的优化
17.4 表设计及其他优化
17.5 整体管理优化总结
第6部分 至尊星耀篇
第18章 Lepus之MySQL监控
18.1 Lepus简介
18.2 实战部署
18.3 监控MySQL服务器
18.4 部署Lepus慢查询分析平台实战
18.5 监控总结
第19章 MySQL版本升级
19.1 升级方式
19.2 实战演练
第7部分 最强王者篇
第20章 MySQL面试宝典
20.1 自我介绍
20.2 技术问答
本书在知识结构上分为7部分。
第1部分 倔强青铜篇(第1~8章)。包括MySQL简介、主流分支版本、数据库安装/启动/关闭、权限管理、MySQL数据库的内存池结构、存储引擎、线程作用、刷新机制、数据库文件、表管理、字符集、统计信息与数据碎片整理的方法。还包括对索引的详细解读,执行计划的分析、压力测试的展现、事务的介绍,以及对隔离级别的深度讲解,并结合锁一起展开学习。
第2部分 秩序白银篇(第9章)。介绍生产环境中常用的备份方法、逻辑备份和裸文件备份。针对mysqldump、select…into outfile、mydumper和xtrabackup等备份恢复工具的原理展开详解及实践演练。
第3部分 荣耀黄金篇(第10~11章)。介绍主从复制的原理,对复制参数进行详细讲解,对半同步复制、多源复制、GTID复制进行全面解读与实践,对复制数据一致性的校验和复制管理技巧进行介绍,并解读主从复制中的各种报错故障。
第4部分 尊贵铂金篇(第12~15章)。介绍互联网主流的MySQL高可用集群架构,对MHA、Keepalived、PXC原理的解析、维护管理与实践,最后介绍ProxySQL这个强大的MySQL中间代理层的应用。
第5部分 永恒钻石篇(第16~17章)。介绍MySQL 5.7版本的新特性,以及通过硬件、操作系统、数据库、程序设计这四个维度来全面介绍MySQL数据库的优化。
第6部分 至尊星耀篇(第18~19章)。学习部署Lepus,监控MySQL与版本升级。
第7部分 最强王者篇 第20章。MySQL面试总结。
MySQL王者晋级之路 下载 mobi pdf epub txt 电子书 格式 2024
MySQL王者晋级之路 下载 mobi epub pdf 电子书东西很便宜,非常满意,值得购买
评分贴合实际的一本书
评分此用户未填写评价内容
评分我为什么喜欢在京东买东西,因为今天买明天就可以送到。我为什么每个商品的评价都一样,因为在京东买的东西太多太多了,导致积累了很多未评价的订单,所以我统一用段话作为评价内容。京东购物这么久,有买到很好的产品,也有买到比较坑的产品,如果我用这段话来评价,说明这款产品没问题,至少85分以上,而比较垃圾的产品,我绝对不会偷懒到复制粘贴评价,我绝对会用心的差评,这样其他消费者在购买的时候会作为参考,会影响该商品销量,而商家也会因此改进商品质量。
评分东西不错,点赞京东,下次继续支持,确实不错,搞活动买的
评分本书深入剖析MySQL数据库体系结构,实战演练备份恢复、主从复制,详解高可用集群架构的设计与实践过程,详细梳理优化思路,展现新版本的特性,并与真实生产案例相结合,通过核心原理到“王者”实战,全面覆盖MySQL数据库的知识点。
评分需要仔细学习,书的内容很详细
评分简直就是呵呵呵记得记得记得记得记得记得记得
评分不错不错不错不错不错不错不错不错不错错不错不错…
MySQL王者晋级之路 mobi epub pdf txt 电子书 格式下载 2024