高性能MySQL(第3版)

施瓦茨 (Baron Schwartz)

出版时间

2013-04-30

ISBN

9787121198854

评分

★★★★★

标签

编程

书籍介绍
这不是一本教你'如何把MySQL跑得快'的操作手册,而是一堂关于'为什么'的课。它反复强调一个近乎执念的观点:性能优化不能靠感觉和经验,而必须靠基准测试说话——没有经过测量的优化,往往是浪费。书中花了大量篇幅讲如何设计测试、运行多久、如何绘图分析,甚至用真实案例说明云环境下的虚拟化开销会让CPU性能排名失效。这种'授人以渔'的取舍,让它区别于市面上罗列调优技巧的速成书。它适合那些不满足于'照着做'、想理解索引、锁、存储引擎、复制背后原理的中高级读者;但也要提醒新手:它假设你已有清晰的概念框架,细节繁复,需要配合检索反复阅读。
作者简介
关于作者 Baron Schwartz 是一位软件工程师,居住在弗吉尼亚州的Charlottesville,网络常用名是Xaprb,这是按照QWERTY 键盘的顺序在Dvorak 键盘上打出来的名字。在不忙于解决有趣的编程挑战时,Baron 会和他的妻子Lynn 以及小狗Carbon 一起享受闲暇的时光。他有一个软件工程方面的博客,地址是http://www.xaprb.com/blog/ Peter Zaitsev 曾经是MySQL AB 公司高性能组的经理,目前在运作mysqlperformance blog.com 网站。他擅长于帮助那些每天有数以百万计访问量的网站的管理员解决问题,这些网站通常需要几百台机器来处理TB 级的数据。他常常为了解决一个问题而不停地升级硬件和软件(比如查询优化)。Peter 还经常在各种会议上演讲。 Vadim Tkachenko 曾经是MySQL AB 公司的性能工程师。作为一名在多线程编程和同步方面的专家,他的主要工作是基准测试、性能剖析,以及找出系统的性能瓶颈。他还在性能监控和调优方面做了一些工作,使得MySQL 在多核机器上有更好的可扩展性。 ================================================================ 译者简介 宁海元 有超过十年的数据库管理经验,从最初到SQL Server 2000到Oracle到MySQL,擅长数据库高可用架构,性能优化和故障诊断。2007年加入淘宝,带领淘宝DBA团队支撑了淘宝业务的快速增长,完成了数据库的垂直拆分、水平拆分,迁移到MySQL体系等主要工作。目前专注于无线数据领域。网络常用名NinGoo,个人博客:http://www.ningoo.net 周振兴 毕业于北京师范大学数学系,09年加入淘宝数据库团队负责MySQL运维管理工作,有丰富的MySQL性能优化、Troubleshooting经验,对MySQL主要模块的实现和原理有深入的研究,经历淘宝MySQL实例从30到3000的发展,对系统架构、高可用环境规划都有深入理解。个人博客:http://orczhou.com 彭立勋 2010年大学毕业后加入阿里巴巴运维部。作为一名MySQL DBA,在运维MySQL的过程中,对MySQL和InnoDB的一些功能和缺陷就进行了补充,编写了多主复制和数据闪回等补丁。目前在阿里集团核心系统研发部数据库组,专注于MySQL数据库相关的开发工作。后来一些补丁被MySQL之父Mony看中,成为MariaDB提交组(Maria-captains)成员,并且把多主复制,线程内存监控等补丁合并到了MariaDB 10.0版本。 翟卫祥 毕业于武汉大学,研究生阶段从事数据库相关研究。毕业后就职于阿里巴巴集团数据库技术团队至今,主要负责阿里内部MySQL代码分支维护,包括MySQL Bug Fix及新特性开发。对MySQL内核有一定的研究。 刘辉 2008年毕业于西安电子科技大学计算机系,硕士学位。2011年加入阿里巴巴集团数据库技术团队,花名希羽,MySQL内核开发工程师。
AI导读
核心看点
  • MySQL领域经典之作,涵盖架构、索引与SQL优化。
  • 深入讲解基准测试、性能剖析及高可用架构设计。
  • 更新SSD、云计算环境及MySQL 5.5新特性内容。
读者共识
  • 公认的经典神书,知其然更知其所以然,值得收藏。
  • 内容全面深入,虽厚且干,但能从根本上解决性能问题。
  • 适合配合搜索阅读,重点掌握索引与查询优化技巧。
精彩摘录
  • "Sometimes people protest that they just don’t have time to benchmark the server for 8 or 12 hours at 10 different levels of concurrency on two or three server versions. If you don’t have the time to do the benchmarks right, any time you do spend is wasted; it is better to trust other people’s result"
  • "The Cisco server has lower per-CPU performance than the EC2 servers. Surprised? We were a bit surprised ourselves.。。。Thus, the explanation for our results is probably as follows: the Cisco server’s CPUs are a couple of years old, and are slower than the EC2 servers. But for more complex tasks such a"
  • "Amazon RDS isn’t the only DBaaS game in town for MySQL users. There are also services such as FathomDB (http://fathomdb.com) and Xeround (http://xeround.com)."
  • "There are currently two solutions that take advantage of this by permitting so-called NoSQL access to MySQL. The first is a daemon plugin called HandlerSocket, which was created at DeNA, a large Japanese social networking site. It permits you to access an InnoDB Handler object through a simple proto"
  • "As the creators of Percona Server, we’re biased to some extent, but we think this appendix is fairly objective because we provide services, support, consulting, training, and engineering for all of the variants of MySQL. We also invited Brian Aker and Monty Widenius, who created the Drizzle and Mari"
  • "MySQL, on the other hand, does offer choices. Its storage engines can implement their own locking policies and lock granularities. Lock management is a very important decision in storage engine design; fixing the granularity at a certain level can give better performance for certain uses, yet make t"
  • "The locking style that offers the greatest concurrency (and carries the greatest overhead) is the use of row locks. Row-level locking, as this strategy is commonly known, is available in the InnoDB and XtraDB storage engines, among others."
  • "Most of MySQL’s transactional storage engines don’t use a simple row-locking mechanism. Instead, they use row-level locking in conjunction with a technique for increasing concurrency known as multiversion concurrency control (MVCC)."
目录
推荐序 xxiii
前言 xxv
第1 章 mysql 架构与历史 1
1.1 mysql 逻辑架构 1
1.1.1 连接管理与安全性2

显示全部
用户评论
看了前几章和执行计划
读了前七章,感觉后面偏运维了
这本书看完了,就知道mysql 怎么用了,基本上用的层面就不会碰上问题了。强烈推荐。。
对于想要了解MySQL性能提升的人来说,这是一本不可多得的书。书中没有各种提升性能的秘籍,而是深入问题的核心,详细的解释了每种提升性能的原理,从而可以使你四两拨千斤。授之于鱼不如授之于渔,这本书做到了。
同事翻译的一本好书,相比第二版 增加了对于硬件 层面对mysql 性能的影响 描述,喜欢第三章troubleshooting 的思路和第九章的对于硬件的介绍,其实这也是我的软肋。。
这本书读得有些痛苦,智商有限,对作者得出的一些结论不是很明白原因。可以感受到作者对MySQL很熟悉,以及计算机知识的深厚。
不喜欢这本书的风格。太干巴巴了,没有具体的例子,思路很容易跟丢,不适合我。
超级经典、知其然知其所以然,没读过这本书别说做自己是做后端开发的,数据库进阶系列
mysql 的话,高性能 mysql 1、4、5、6 章对于 普通的 web 和后台开发者就够用了 有些不通顺
不太适合一次读完,比较适合当工具书
下载
收藏