用心写了一本书:《MySQL运维内参》
《MySQL运维内参----MySQL、Galera、Inception核心原理与最佳实践》这本书是去哪儿网DBA团队周彦伟、王竹峰、强昌金历经近两年时间,在总结工作经验和研究MySQL源代码的基础上创作的,书中介绍了大量MySQL知识点原理及运维经验,同时也介绍了我们的开源项目Inception的细节。
作者简介:
-
周彦伟:去哪儿网数据库总监,中国MySQL用户组主席,Oracle MySQL ACE Director
-
王竹峰:去哪儿网数据库技术专家,Inception开源项目作者,中国MySQL用户组主席团成员
-
强昌金:去哪儿网高级DBA,Inception开源项目维护者和贡献者,Redis中国用户组创始人兼副主席
同时我们又得到了来自MySQL官方技术专家的支持:
MySQL技术顾问,负责大中华及亚洲地区MySQL的技术推广及项目的推动和技术指导,同时也是台湾MySQL社区的发起人杜修文先生为本书友情撰写了“MySQL Document Store面面观”一节,详细介绍了MySQL对NoSQL的支持和用法。
MySQL Replication研发团队宋利兵先生为本书友情撰写了“MySQL Group Replication”一节,详细介绍了最新的MySQL Group Replication原理和细节。
-
如果你是一名技术管理者,期望本书能帮你建立对MySQL数据库的信心,助你完成对数据库方向的技术体系建设。同时也能助你了解MySQL的原理和架构。其中的知识要点,如果你在面试中使用的话,应该能帮你找到你所渴求的那 1% 的顶尖人才。
-
如果你是一名架构师,期望本书能帮你在MySQL架构上大显身手,本书中介绍到的MySQL Replication,Semi-Sync Replication,Group Replication,Galera Cluster,几乎囊括了所有MySQL架构的基础,一定有一款适合你。
-
如果你是一名开发者,期望本书能帮助你在开发过程中,充分理解MySQL的原理,设计出合理的数据库表和索引,很好的利用MySQL的优势,避开MySQL的劣势,合理使用这个优秀的开源数据库。
-
如果你是一名DBA,真心的恭喜你,本书的知识能助你成为那顶尖的1%。
以下是本书介绍里面的《关于本书》:
MySQL是开源世界里面一颗璀璨的明珠,是最流行的关系型开源数据库。关于MySQL的著作浩如烟海,充栋盈车。如何才能写出一本有特色内容的书呢?本书独辟蹊径,从运维和实践相结合的角度,分专题和知识点逐一讲解。用源码去解释MySQL的知识点,用源码去分析我们碰到的问题,这是本书的特色。
本书内容所涉及的知识点的选择,是建立在我们多年工作经验的基础之上的,我们在平时维护MySQL的过程中,觉得需要引起注意或者需要弄清楚的,就把它分享出来,希望能管中窥豹,帮助到读者朋友。
本书总体分三个部分。
第一部分是MySQL。
在这部分里面,我们介绍了MySQL大部分常见的知识点的概念和原理,以及运维经验。所谓源码面前,了无秘密。我们从MySQL源码入门开始,介绍源码结构、启动过程、创建连接、表对象缓存等等,期望我们的读者在研究MySQL的时候,能充分借助MySQL源码开源的优势,从源码出发,深入理解MySQL的精髓。当然限于篇幅,我们只能抛砖引玉,适可而止。期望聪明的读者能打好基础,登堂入室。
我们会重点介绍InnoDB相关的概念,从源码目录结构,到InnoDB体系架构,以及其数据字典、数据存储结构、索引的实现原理、两次写DoubleWrite、日志管理机制、InnoDB记录格式等等,我们对其进行了深度的剖析,这块内容比较复杂,也凝聚了我们巨大的心血,期望能帮助读者理解其中相关的概念。
随着MySQL5.7的成熟以及MySQL8.0的发布,一大波MySQL新技术迎面扑来,我们也不会放过这次学习的机会。值得称道的是,本书中包含了来自两位MySQL官方团队的专家特地给我们供稿的内容,分别详细讲述了MySQL对JSON的支持:MySQL as Document Store和崭新的MySQL Group Replication。其他的,我们也关注了MySQL的GTID、SYS Schema、Semi-Sync Replication等等,通过对它们的详细描述,相信这本书能为广大读者在快速熟悉和掌握MySQL新版本中出现的功能的学习助上一臂之力。
在讲述各个知识点的同时,我们也会结合我们工作过程中的一些经验,跟大家分享自己的心得,例如我们详细介绍了Percona XtraBackup,也分享了在使用它的过程中碰到的问题。类似的,还有快速删除大表的案例、死锁的案例、处理很多文件时碰到的问题等等。
最后,值得一提的是,我们结合各个知识点,还对MySQL如何保障数据库安全做了比较详细的总结,希望这会改变人们对开源数据库是否可靠这样的问题的一些有争议的看法。
第二部分是Galera。
Galera是我们在去哪儿网架构MySQL高可用的技术基础,我们选择了以Galera Cluster为基础的Percona XtraDB Cluster为技术原型,自主研发了针对去哪儿网这种以交易为主需求的电子商务网站的MySQL高可用架构方案,目前已经在线使用三年,可能也是国内最大的Galera集群,我们也很荣幸的能成为MySQL集群化的早期践行者。
在这部分,我们首先介绍了Galera Cluster的设计与实现,让读者能在宏观理解它。当然虽然说是宏观,根据本书写作的主导思想,也不免会从源码的角度去剖析其架构、理解其精华。Galera提供了非常丰富的参数让使用者去灵活设置,我们也做了重点介绍和解析。
在准备工作完成之后,我们开始讲述Galera的重要的知识点:验证方法、消息传送、GCache实现原理、SST/IST细节、Donor/Desynced详解、并发控制、FlowControl以及grastate.dat文件揭秘等等。仔细研读了这些内容之后,相信读者对Galera的理解会更上层楼。
实践是本书的另一个特色,所以在Galera的部分,我们也加入了不少的实践案例,例如:业务更新变慢的根由溯源、手动构建集群死锁、从库的转移等等,通过这些内容,分享我们工作中的一些心得,希望读者能够从中受益。
第三部分是Inception。
这是我们从零做出来的一个开源项目。Inception已经开源,其手册已经广泛传播于网络,而本书所要讲述的,更是对Inception的一种理解,它对我们的意义以及一种设计理念。
关于它的诞生,安装与使用,以及支持的选项和结果集,命令集等等,我们都会介绍。同时值得注意的是,我们特地安排了一节名为Inception的彩蛋,里面讲述了几个Inception的特殊功能,它们已经成为我们日常工作中不可或缺的重要工具了。
作者微信:王竹峰:tlf577,强昌金:qiangchangjim,周彦伟:zhouyanwei。如果对本书感兴趣可以添加任意一个作者微信,可以拉你进入本书微信交流群。
MySQL&Inception讨论:QQ群:185803996
更多详情请关注微信公众号:formysql
关于本书的签名预售,请参考: