Baron Schwartz, Peter Zaitsev, Vadim Tkachenko, Jeremy D. Zawodny, Arjen Lentz, Derek



* 强调性能和可靠性的每一方面
* 详细涵盖搜索引擎,包括深度调优和InnoDB存储引擎的优化
* MySQL5.0和5.1新功能的效用,包括存储过程、数据库分区、触发器和视图
* 对如何使用MySQL构建大型、高可扩展系统进行了详细的讨论
* 备份和副本的新选项
* 高级查询功能的优化,例如全文检索
* 四个全新的附录


——Michael Widenius,MySQL的初始开发人员
  1. Foreword
  2. Preface
  3. 1. MySQL Architecture
  4. MySQL’s Logical Architecture
  5. Concurrency Control
  6. Transactions
  7. Multiversion Concurrency Control
  8. MySQL’s Storage Engines
  9. 2. Finding Bottlenecks: Benchmarking and Profiling
  10. Why Benchmark?
  11. Benchmarking Strategies
  12. Benchmarking Tactics
  13. Benchmarking Tools
  14. Benchmarking Examples
  15. Profiling
  16. Operating System Profiling
  17. 3. Schema Optimization and Indexing
  18. Choosing Optimal Data Types
  19. Indexing Basics
  20. Indexing Strategies for High Performance
  21. An Indexing Case Study
  22. Index and Table Maintenance
  23. Normalization and Denormalization
  24. Speeding Up ALTER TABLE
  25. Notes on Storage Engines
  26. 4. Query Performance Optimization
  27. Slow Query Basics: Optimize Data Access
  28. Ways to Restructure Queries
  29. Query Execution Basics
  30. Limitations of the MySQL Query Optimizer
  31. Optimizing Specific Types of Queries
  32. Query Optimizer Hints
  33. User-Defined Variables
  34. 5. Advanced MySQL Features
  35. The MySQL Query Cache
  36. Storing Code Inside MySQL
  37. Cursors
  38. Prepared Statements
  39. User-Defined Functions
  41. Character Sets and Collations
  42. Full-Text Searching
  43. Foreign Key Constraints
  44. Merge Tables and Partitioning
  45. Distributed (XA) Transactions
  46. 6. Optimizing Server Setting
  47. Configuration Basics
  48. General Tuning
  49. Tuning MySQL’s I/O Behavior
  50. Tuning MySQL Concurrency
  51. Workload-Based Tuning
  52. Tuning Per-Connection Settings
  53. 7. Operating System and Hardware Optimization
  54. What Limits MySQL’s Performance?
  55. How to Select CPUs for MySQL
  56. Balancing Memory and Disk Resources
  57. Choosing Hardware for a Slave
  58. RAID Performance Optimization
  59. Storage Area Networks and Network-Attached Storage
  60. Using Multiple Disk Volumes
  61. Network Configuration
  62. Choosing an Operating System
  63. Choosing a Filesystem
  64. Threading
  65. Swapping
  66. Operating System Status
  67. 8. Replication
  68. Replication Overview
  69. Setting Up Replication
  70. Replication Under the Hood
  71. Replication Topologies
  72. Replication and Capacity Planning
  73. Replication Administration and Maintenance
  74. Replication Problems and Solutions
  75. How Fast Is Replication?
  76. The Future of MySQL Replication
  77. 9. Scaling and High Availability
  78. Terminology
  79. Scaling MySQL
  80. Load Balancing
  81. High Availability
  82. 10. Application-Level Optimization
  83. Application Performance Overview
  84. Web Server Issues
  85. Caching
  86. Extending MySQL
  87. Alternatives to MySQL
  88. 11. Backup and Recovery
  89. Overview
  90. Considerations and Tradeoffs
  91. Managing and Backing Up Binary Logs
  92. Backing Up Data
  93. Recovering from a Backup
  94. Backup and Recovery Speed
  95. Backup Tools
  96. Scripting Backups
  97. 12. Security
  98. Terminology
  99. Account Basics
  100. Operating System Security
  101. Network Security
  102. Data Encryption
  103. MySQL in a chrooted Environment
  104. 13. MySQL Server Status
  105. System Variables
  110. Replication Status
  112. 14. Tools for High Performance
  113. Interface Tools
  114. Monitoring Tools
  115. Analysis Tools
  116. MySQL Utilities
  117. Sources of Further Information
  118. A. Transferring Large Files
  119. B. Using EXPLAIN
  120. C. Using Sphinx with MySQL
  121. D. Debugging Locks
  122. Index
原版书出版商:O'Reilly Media
Baron Schwartz
Baron Schwartz目前是Percona公司的首席性能架构师。他创造了很多工具和技术,使得MySQL更加易用和可靠。
Peter Zaitsev
Peter Zaitsev是Percona公司的CEO和联合创始人。他是一位数据库内核、计算机硬件和应用扩展性方面的专家。他曾经负责管理MySQL的高性能小组,这项工作一直持续到2006年。
Vadim Tkachenko
Vadim Tkachenko是Percona公司的CTO和联合创始人。他目前负责带领Percona公司的开发小组,开发的产品包括Percona Server、Percona XtraDB集群,以及Percona XtraBackup。
Jeremy D. Zawodny
Jeremy D. Zawodny and his two cats moved from Northwest Ohio to Silicon Valley
in late 1999, so he could work for Yahoo!—just in time to witness the dot-com
bubble bursting firsthand. He spent eight and half years at Yahoo!, helping to put
MySQL and other open source technologies to use in fun, interesting, and often very
big ways.
In recent times, he’s rediscovered his love of aviation, earning a private pilot glider
license in early 2003 and his commercial pilot rating in 2005. Since then he’s spent
far too much of his free time flying gliders out of Hollister, California and the Lake
Tahoe area. He also flies single engine light airplanes now and then, coowning a
Citabria 7KCAB and Cessna 182. Occasional consulting work helps to pay for his
flying addiction.
Jeremy lives in the San Francisco Bay Area of California with his wonderful wife and
their four cats. He blogs at jeremy.zawodny.com/blog.
Arjen Lentz
Arjen Lentz was born in Amsterdam but has lived in Queensland, Australia since the
turn of the millennium, sharing his life these days with his beautiful daughter Phoebe
and black cat Figaro. Originally a C programmer, Arjen was employee #25 at
MySQL AB (2001–2007). After a brief break in 2007, Arjen founded Open Query
(http://openquery.com.au), which develops and provides its own data management
training and consulting services in the Asia Pacific region and beyond. Arjen also
regularly speaks at conferences and user groups. In his abundance of spare time,
Arjen indulges in cooking, gardening, reading, camping, and exploring the RepRap.
Visit his weblog at http://arjen-lentz.livejournal.com.
The animal on the cover of High Performance MySQL is a sparrow hawk (Accipiter
nisus), a small woodland member of the falcon family found in Eurasia and North
Africa. Sparrow hawks have a long tail and short wings; males are bluish-gray with a
light brown breast, and females are more brown-gray and have an almost fully white
breast. Males are normally somewhat smaller (11 inches) than females (15 inches).
Sparrow hawks live in coniferous woods and feed on small mammals, insects, and
birds. They nest in trees and sometimes on cliff ledges. At the beginning of the
summer, the female lays four to six white eggs, blotched red and brown, in a nest
made in the boughs of the tallest tree available. The male feeds the female and their
Like all hawks, the sparrow hawk is capable of bursts of high speed in flight. Whether
soaring or gliding, the sparrow hawk has a characteristic flap-flap-glide action; its
large tail enables the hawk to twist and turn effortlessly in and out of cover.