强烈推荐 10 本我私藏的数据库书单,附读书方法

2020-06-22 00:00:00 数据库 高效 这本书 我觉得 黑皮

二哥有推荐的数据库书单吗?关于 MySQL 和 Oracle 的,谢谢了。

读者小猫私信问了我上面这个问题,我觉得问题挺典型的,值得写篇文章分享一下。因为对于 Java 程序员来说,几乎不可避免地要和数据库打交道,MySQL 和 Oracle 恰好又是两个使用广泛的数据库。

MySQL 和 Oracle 都属于关系型数据库,现在都隶属于甲骨文公司,这家公司的产品很牛逼,CEO 拉里埃尔森也很牛逼,和史蒂夫乔布斯是铁哥们。Oracle 相对 MySQL 更沉重一些,属于企业级应用。而 MySQL 是开源的,性能又给力,所以近些年来市场占用率已经飙升到了位,甩开 Oracle 两条街。

(我用 Oracle 比较少,所以本篇就以 MySQL 为主,小伙伴们如果对 Oracle 了解得比较透彻,请在留言区推荐一下,拜谢。)

好了,接下来上书单,希望小伙伴们能够喜欢,喜欢的话,就收藏,让它吃灰去。不不不,喜欢的话,买几本好好读读,学到就是赚到。

本、《SQL 必知必会》

SQL,全名为 Structured Query Language,也就是结构化查询语言。经常有一些小伙伴抱怨说,“二哥,在公司干的无非是一些 CURD 的工作,感觉没啥进步。”这句话里面的 CURD 指的就是创建(Create)、更新(Update)、读取(Retrieve)和删除(Delete)相关的业务操作,也就是 SQL 的范围。

但说白了,再伟大的产品,其业务永远也是围绕着增删改查转啊。

《SQL 必知必会》这本书名副其实,能在短时间内教会你实际工作环境中常用和必需的 SQL 知识,实用性极强。这本书是麻省理工学院、伊利诺伊大学等众多大学的参考教材——是不是一下子就感觉档次高了。

第二本、《SQL 学习指南》

封面上有一只小动物,再带上“O'REILLY”这个标识,就可以下一句肯定的结论了——这是一本经典书。

《SQL学习指南(第2版 修订版)》这本书以 SQL92 标准为蓝本,涵盖了 MySQL 6.0、Oracle 11g。全面系统地介绍了 SQL 语言各方面的基础知识以及一些特性,包括 SQL 数据语言、SQL 方案语言、数据集操作、子查询以及内建函数与条件逻辑等内容。

经常和数据库接触的初学者可以常备在身边,用到就去翻翻。

第三本、《MySQL 必知必会》

《MySQL 必知必会》这本书的英文原版名是《Sams Teach Yourself MySQL in 10 Minutes》,有没有品到一丝丝标题党的味道?不过,中文版名字就优雅多了。

这书非常适合想快速了解数据库原理和 MySQL 的新手阅读。快餐性质,简洁明快,小开本,而且很薄,有点《了不起的盖茨比》那本书的味道,读起来很流畅。

第四本、《数据库系统概念》

哇,黑皮书来了哦!黑皮书只有一个缺点,就是枯燥,但说良心话,黑皮书都特么是经典之作啊。尤其适合心静的大学生来读,反正大学生活除了谈恋爱重要外(嘿嘿),我觉得就剩下学习了。

数据库领域的殿堂级作品;夯实数据库理论基础,增强数据库技术内功的必备之选;对深入理解数据库,深入研究数据库,深入操作数据库都具有极强的指导作用!

总之,有时间就读,真的香就对了。

第五本、《MySQL技术内幕 : InnoDB存储引擎 第2版》

众所周知,MySQL 有两种常见的存储引擎,一种是 MyISAM,一种是 InnoDB。如果需要支持事务,就选择 InnoDB,如果一个表绝大多数情况下只用来读,可以选择 MyISAM。从 MySQL 5.5 开始,InnoDB 已经成为 MySQL 的默认引擎,这说明它的优势是有目共睹的。

《MySQL技术内幕:InnoDB存储引擎(第2版)》这本书恰好从源代码的角度深度解析了 InnoDB 的体系结构、实现原理、工作机制,并给出了大量佳实践,能帮助你系统而深入地掌握 InnoDB,更重要的是,它能给你你设计高性能、高可用的数据库系统提供的指导。

第六本、《高性能MySQL(第3版)》

这本书的封面是不是有点熟,风格和之前推荐的《 SQL 学习指南》高度相似,对吧?这本书的知名度非常高,就好像 MySQL 领域的周杰伦,几乎所有要学习 MySQL 的开发人员都得买它。

我家里这本书已经快被我翻烂了,说实话。这本书的内容非常丰富,几乎涵盖了 MySQL 所有方面:

  • 前两章为准备阶段,包含一些基本的概念与性能评测工具。
  • 第三章到第七章为优化部分,从架构、索引、查询语句,到参数配置、软硬件的优化。
  • 第八章到第十四章为服务的管理与维护,涵盖了复制、备份、安全等等内容及相关工具。

第七本、《高可用MySQL(第2版)》

《高可用MySQL:构建健壮的数据中心》这本书主要讲解真实环境下如何使用 MySQL 的复制、集群和监控特性,揭示 MySQL 可靠性和高可用性的方方面面。旨在解决 MySQL 数据库的常见应用瓶颈,在保持 MySQL 的持续可用性的前提下,挖潜各种提高性能的解决方案。

这本书比较适合 MySQL 的专业人士看,否则很难驾驭得了。

第八本、《Oracle高效设计》

没办法,虽然 Oracle 用得不多,但对经典书还是有一些耳闻的。《Oracle高效设计》这本书的评价还是不错的,作者 Thomas Kyte 是 Oracle 专业领域世界上权威的专家之一,也是 Oracle 核心技术小组副主席。

这本书对 Oracle 及数据库的知识进行了全面深入的讲解,是一本关于 Oracle 的手册。内容包括:性能工具包、体系结构选择、语句处理、故障排除、高效的管理、高效的设计模式、高效的 PL/SQL 程序设计等。

好了,就到这吧,小伙伴们,我觉得这八本书已经够看上一段时间了。接下来,顺带分享一下我的一些读书方法,我觉得这个价值可能比书单本身更有价值,希望能够给小伙伴们的一些参考。

1)速读

像入门书籍,要在短时间内过一遍,比如说《SQL 必知必会》,不要觉得速读一遍什么也记不住,没关系的,本身脑容量就是有限的。速读的目的很单纯,了解一本书的大纲,有没有勾引你(感兴趣)的内容。

或者说有没有你不懂的内容,标记一下,对后面再读做到一个提醒的作用。

2)精读

有了速读的基础,再认真读一遍的时候,你就会感觉完全不一样了,就好像你去一个地方旅游,总要先做个小攻略,在地图上盘算一下,真正身处一个地方的时候,你就不会晕头转向,或者说有一种,“哦,原来是这样啊”的感觉。

3)实战

读书怕就是眼高手低,你以为你记住了,理解了,如果不动手记笔记或者敲代码去实战的话,基本上等于没看,因为你是在读技术书,又不是哲学书,对吧?

只靠大脑去思考是远远不够的,还需要你的手去敲一敲,跑一跑,执行一下,看看结果是否符合预期,会不会出错。

这三个步骤下来,一本书就再也不愁“读了和没读一样”了,小伙伴们有没有 get 到?

我是沉默王二,一枚有趣的程序员。如果觉得文章对你有点帮助,请微信搜索「 沉默王二 」时间阅读。

本文 GitHub 已经收录,有大厂面试完整考点,欢迎 Star。

原创不易,莫要白票,请你为本文点个赞吧,这将是我写作更多优质文章的强动力。

相关文章