高性能MySQL(第4版)
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

前言

由Oracle维护的官方文档为你提供了安装、配置和与MySQL交互所需的基础知识。本书可以作为官方文档的配套图书,帮助你了解如何更好地利用MySQL作为某个应用场景的强大数据平台。

第4版扩展了在操作数据库过程中的合规性和安全性方面的内容,这两方面所扮演的角色日益重要。隐私法和数据主权等新的现实问题改变了公司构建产品的方式,这自然会给技术架构的发展带来新的复杂性。

这本书是写给谁的

这本书首先是为那些希望在运行MySQL方面提高专业技能的工程师准备的。这个版本假设读者熟悉关系数据库管理系统(RDBMS)的基本原理。我们还假设读者有常规系统管理、网络和操作系统维护方面的经验。

我们将为你提供经过验证的策略,让你可以使用现代体系结构及更先进的工具和实践来大规模运行MySQL。

最后,我们希望你能从本书中获得MySQL内部原理和扩展策略的相关知识,能够帮助你在组织中扩展数据存储层。我们还希望你从书中新发现的见解,可以帮助你学习和实践一种系统的方法,用来设计、维护和检测基于MySQL的系统架构。

第4版有什么不同

《高性能MySQL》多年来一直是数据库工程社区的一部分,从第1版到第3版的3本书分别发布于2004年、2008年和2012年。在以前的版本中,我们专注于深入剖析内部设计,解释各种调优设置的含义,并提供有效更改设置的知识,以此来达到我们的目标,告诉开发者和管理员如何优化MySQL的每一点性能。这个版本保持了相同的目标,但有不同的侧重点。

自第3版出版以来,MySQL发布了3个新的大版本,其生态系统发生了很大变化。它在工具范围上大大扩展,突破了Perl和Bash脚本,并发展出成熟的工具解决方案。全新的开源项目已经建立,这改变了企业管理MySQL的方式。

传统的数据库管理员(DBA)的角色也在不断演变。业内有一个古老的笑话,DBA的全称是“不要费心去问”(Don't Bother Asking)。DBA在软件开发生命周期(SDLC)中以“减速带”而闻名,这并不是因为他们有一种守旧的态度,而仅仅是因为数据库的发展速度不如SDLC的其他部分快。

有了《数据库可靠性工程:数据库系统设计与运维指南》(莱恩·坎贝尔、夏丽蒂·梅杰斯著,O'Reilly出版)等书,这已经成为一个新的现实:技术组织更多地将数据库工程师视为业务增长的促进因素,而不是所有数据库的唯一操作员。DBA的主要日常工作曾经涉及schema设计和查询优化,现在他们负责向开发人员传授这些技能,并管理系统,使开发人员能够快速、安全地部署自己的模式变更。

基于这些变化,我们认为不应该再将本书的重点放在优化MySQL以将性能提高几个百分点上,而应当是为人们提供他们所需要的信息,以便就如何最好地使用MySQL做出明智的决定。这首先要理解MySQL是如何设计的,也就是要理解MySQL擅长做什么,不擅长做什么。[1]MySQL的现代版本提供了合理的默认值,除非你遇到非常具体的扩展问题,否则几乎不需要进行任何调整。现代团队需要更多地处理模式更改、合规性问题和分片。我们希望本书能够全面指导当下的公司如何更好地大规模运行MySQL。

本书使用的约定

本书使用如下排版约定:

斜体(Italic

用于表示对应的内容是新词汇、URL、邮箱地址、文件名和文件扩展名。

等宽字体(Constant width)

用于程序清单(包括段落中的),表示程序元素,如变量名或函数名、数据库、数据类型、环境变量、语句和关键字。

等宽加粗字体(Constant width bold)

用于显示命令或用户输入的文本。

等宽斜体(Constant width italic

用于显示应该由用户提供或根据上下文确定的值。

这个图标表示提示或建议。

这个图标表示一般注释。

这个图标表示警告或者提醒。

O'Reilly在线学习平台(O'Reilly Online Learning)

近40年来,O'Reilly Media致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。

我们拥有独一无二的专家和革新者组成的庞大网络,他们通过图书、文章、会议和我们的在线学习平台分享他们的知识和经验。O'Reilly的在线学习平台允许你按需访问现场培训课程、深入的学习路径、交互式编程环境,以及O'Reilly和200多家其他出版商提供的大量文本和视频资源。有关的更多信息,请访问http://oreilly.com

如何联系我们

请将对本书的评价和存在的问题通过如下地址告知出版者。

美国:

O'Reilly Media, Inc.

1005 Gravenstein Highway North

Sebastopol, CA 95472

中国:

北京市西城区西直门南大街2号成铭大厦C座807室(100035)

奥莱利技术咨询(北京)有限公司

O'Reilly的每一本书都有专属网站,你可以在那里找到图书的相关信息,包括勘误列表、示例代码及其他信息。本书的网址是:

https://oreil.ly/hiperfmysql_2e

关于本书的评论和技术性的问题,请发送电子邮件到:

bookquestions@oreilly.com

关于我们的图书、课程、会议和新闻的更多信息,请参阅我们的网站http://www.oreilly.com

在Facebook上找到我们:http://facebook.com/oreilly

在Twitter上关注我们:http://twitter.com/oreillymedia

在YouTube上观看我们:http://www.youtube.com/oreillymedia


[1] 有一种众所周知的情况,经常有人把MySQL作为队列来使用,然后还抱怨它为什么不好。最常被吐槽的原因是轮询新队列操作的开销、处理消息时锁定记录的成本,以及随着时间的推移数据量不断增长,队列表变得越来越笨重。