《MySQL是怎样运行的:从根儿上理解MySQL》出版啦!

等了一年又一年,千呼万唤始出来,《MySQL是怎样运行的:从根儿上理解MySQL》这本书终于面世啦!赶忙先瞅瞅它长啥样吧:程序员

看到封面后,不少小伙伴心里确定飘起了这样的声音:“额~ 这么卡哇伊的封面,这是给小孩儿看的吗?”其实这么说也没问题,若是小孩儿都能看懂的话,大人再看不懂岂不是更很差意思哈~面试

小孩子从小就有一个疑惑:为何我在接触一门新课程的时候老是以为它很高大上,而且学的过程也比较痛苦,可是当我真正学会它的时候,又会以为这玩意儿也就那样,没什么了不得的,可是为啥学的时候就不能很轻松呢?有时候咱们走了好久,却忘记本身为何出发,相似的,大人长大后就忘记了本身做为小孩时的样子,一个满腹经纶的技术专家对于初学者所面临的问题每每是没法切身体会的,因此我决定以小孩子(初学者)的角度去创做一些技术书籍,从用户的角度出发去解决同志们在学习过程当中面临的痛点,这也是“小孩子4919”笔名的由来。数据库

为何要写这本书

做为一名智商平平的程序员,在平常学习过程当中常常会遇到两种贼尴尬的状况:服务器

  • 学习资料极其晦涩,看起来都是些高大上的知识,看着看着就困了;
  • 不少通俗易懂的资料感受就是小儿科,看完了跟没看差很少。

而广大的人民群众其实须要经历一个由浅入深的平缓学习曲线,并且这个学习的过程不至于特别的无聊。我灵机一动,这天底下和我同样的同窗确定有不少不少,若是我能把那些晦涩难懂的知识按照尊重学习者认知规律的方式表达出来,那岂不是一件极其有意义的事情吗?毕竟我一我的敲代码创造的价值和让成千上万的人快速、友好的学会一门知识所创造的价值是远远不能比的。固然,这只是一个美好的想法,作这个事情是须要投入巨大的精力的。因而我辞掉了工做,放弃了周末,决心花上几年时间来干这件能让我每天打鸡血的工做。微信

写做这本书的时间主要是花在下边这两个方面:markdown

  • 本身搞清楚MySQL究竟是怎样运行的,这个过程就是不断的研究源码,参考各类书籍和资料;
  • 思考如何把我已经知道的知识表达出来。这个过程就是我不停的在地上走来走去,梳理知识结构,斟酌用词用句,不停的将已经写好的文章推倒重来,只是想给你们一个不错的用户体验。

这两个方面用的时间基本上是各占一半。oop

本书有什么特点

这并非一本传统意义上的技术图书,大体有如下特色。学习

  • 全文用大白话写成,并且有的地方在“扯犊子”,就像是有我的在跟同窗们唠嗑同样,但愿各位看起来别犯困。
  • 从初学者角度出发,尝试避免用一个没学过的概念去介绍另外一个新概念。
  • 语言在图片面前一直都是很苍白的,因此我画了不少图,各位慢慢看。
  • 魔鬼藏在细节中。以往不少同窗在读书的时候感到困惑,是由于细节给出的不够多,致使你们伙瞎猜。
  • 层层铺垫的结构划分。本书覆盖的内容造成了一个闭环,但愿你们在读完书后能有一个看完了一个完整故事的感受。
  • 等等等等,我一时想不起来了。

本书写了什么

虽然本书在某些方面看起来不是那么严肃,可是的确是一本专业技术图书,致力于覆盖你们工做和面试过程当中最常遇到的一些关于MySQL的核心概念。本书共划分为4个部分,双色印刷(注意是双色印刷,很漂亮滴)正文约450页。各部分简介以下。优化

  • 第1部分(第1章~第3章):以只会写增删改查语句的小白身份从新审视MySQL究竟是个什么东西,介绍MySQL的服务器程序和客户端程序有哪些、启动选项和系统变量以及字符集的一些事情。
  • 第2部分(第4章~第9章):唠叨记录、页面、索引、表空间的结构和用法。第2部分是全篇的基础,后边的章节都依赖于这些结构。
  • 第3部分(第10章~第17章):介绍同窗们工做中常常遇到的查询优化问题,好比单表查询是如何执行的,链接查询是怎么执行的,MySQL基于成本和规则的优化是个什么东西。本部分还十分详细的介绍如何查看Explain语句的执行结果。
  • 第4部分(第18章~第22章):介绍为何会有事务的概念,以及MySQL是如何实现事务的,其中包括redo日志、undo日志、MVCC、各类锁的细节等。

本书的目录以下:spa

写做本书时参考的MySQL源码版本是5.7.22,不过书中的绝大部分知识和MySQL的版本没有什么特别大的关系,在某些与特定版本相关的地方我也有明显的强调。

本书读者对象

你们须要注意的是,本书并非一本数据库入门图书,所以你们须要知道增删改查是啥意思,而且能用SQL语句写出来。固然并不要求各位知道的太多,甚至不知道链接的语法均可以。另外,读者应该掌握一些计算机基础知识,比方说什么是位、什么是字节、进制转换等。本书大体适合下边这些读者来阅读:

  • 刚刚学完SQL基础的同窗;
  • 被数据库问题折磨的求职者;
  • 每天被DBA逼着优化SQL的业务开发小伙伴;
  • 菜鸟DBA和不是很是菜的DBA小伙伴;
  • 对MySQL内核有强烈兴趣但一看源码就发懵的小伙伴。

本书与掘金小册的关系

在2018年3月,我在掘金平台发布了一本名为《MySQL是怎样运行的:从根儿上理解MySQL》的小册,这本小册就是本书的初稿,本书的章节结构和小册的基本一致。可是这并不意味着本书就是单纯的将小册内容纸质化,纸质书在小册的基础上作了许多改进:

  • 咱们针对小册创建了许多微信答疑群,在距初稿发布的这两年半时间内,有成百上千的同窗针对小册中比较难以理解的地方提出了五花八门的问题,纸质书针对这些问题优化了一下原先的表达方式,使其更容易理解。

  • 针对纸质书的第3章、第7章、第10章、第21章、第22章的绝大部份内容进行了重写,也就是与小册彻底不一样。这主要是由于我以为小册中对应的章节表达内容太浅或者太笼统,细节给出的不太够,可能会有歧义,反正读着有一些怪,因此不如将它们彻头彻尾的进行重写,以达到更好的效果。

  • 每一章节都逐字逐句进行优化,增长若干新的细节,删除没必要要的段落,让用户体验更佳。

总而言之,小册是本书的前身,至关于前一个版本,本书是小册的升级版,相信即便是读太小册的同窗,再读本书也会有不少新的收获的~

售后服务

相信大部分同窗买书确定不仅仅的只是想买那几页纸(固然除去部分买了收藏的同窗),咱们买书只是想买到书里所蕴藏的知识,若是获取不到知识的话,那这本书和厕纸有啥两样(可能不如厕纸柔软~)?

虽然我尽了很大的努力来让进阶MySQL的这个过程变得更容易些,但终究不能知足全部人的需求,有不少同窗在阅读过程当中确定会产生这样那样的疑惑,我知道在阅读技术图书的过程当中遇到了疑惑而不得解是一种多么大的折磨(在写做本书过程当中常常由于一个想不通的小问题而痛苦几天甚至十几天),若是你们在阅读本书的过程当中遇到了什么不得解的困惑,能够参照书中给出的联系方式加入咱们的微信答疑群提问。这里须要特别注意一下,须要提问的同窗必定要先搞清楚本身到底哪里不清楚,而后用通顺的语句把它表达出来。以往不少同窗的问题都是含糊不清,表达不通顺,这样的问题让人看了要发疯,因此为了咱们双方的方便,提问前请认真思考一下。

关于答疑服务,购买过个人掘金小册的同窗颇有发言权(你们能够咨询一下身边买过个人小册的同窗)。另外,我只负责回答关于本书的问题,其余问题请和其余同窗讨论(一是做者极可能也不会,二是做者精力有限,望理解)。

如何购买本书

本书订价99元(这是一本正文达450多页,而且双色印刷的图书),可是做为小青蛙的粉丝,不要99,也不要79,固然也不能卖九块九(那我就太亏了),扫描下方二维码便可半价购买本书,也就是能够49.5购买本书(必定要经过下方二维码购买喔,这样做者还能多收入几块钱)。

使用京东的同窗能够点击连接:u.jd.com/tuL96S0 或者扫描下方的二维码:

使用当当的同窗能够点击连接:u.dangdang.com/H8quW 或者扫描下方的二维码:

你们的支持是小孩子持续创做的动力(毕竟小孩子不是富二代,也得挣钱吃饭),小孩子必定会创做更多通俗易懂的技术书籍来让你们的学习过程更轻松、更快速。剧透一下,下一本技术书籍《计算机是怎样运行的》正在来的路上,只要你懂初高中的电学,就能够轻松“制做”一台计算机,敬请期待~

相关文章
相关标签/搜索