High Performance MySQL (Second Edition)

( 6 )


High Performance MySQL is the definitive guide to building fast, reliable systems with MySQL. Written by noted experts with years of real-world experience building very large systems, this book covers every aspect of MySQL performance in detail, and focuses on robustness, security, and data integrity.

High Performance MySQL teaches you advanced techniques in depth so you can bring out MySQL's full power. Learn how to design schemas, indexes, queries and advanced MySQL features ...

See more details below
Paperback (Second Edition)
BN.com price
(Save 10%)$49.99 List Price
Other sellers (Paperback)
  • All (21) from $1.99   
  • New (3) from $53.91   
  • Used (18) from $1.99   
High Performance MySQL: Optimization, Backups, Replication, and More

Available on NOOK devices and apps  
  • NOOK Devices
  • Samsung Galaxy Tab 4 NOOK
  • NOOK HD/HD+ Tablet
  • NOOK
  • NOOK Color
  • NOOK Tablet
  • Tablet/Phone
  • NOOK for Windows 8 Tablet
  • NOOK for iOS
  • NOOK for Android
  • NOOK Kids for iPad
  • PC/Mac
  • NOOK for Windows 8
  • NOOK for PC
  • NOOK for Mac
  • NOOK for Web

Want a NOOK? Explore Now

NOOK Book (eBook)
BN.com price
(Save 42%)$39.99 List Price


High Performance MySQL is the definitive guide to building fast, reliable systems with MySQL. Written by noted experts with years of real-world experience building very large systems, this book covers every aspect of MySQL performance in detail, and focuses on robustness, security, and data integrity.

High Performance MySQL teaches you advanced techniques in depth so you can bring out MySQL's full power. Learn how to design schemas, indexes, queries and advanced MySQL features for maximum performance, and get detailed guidance for tuning your MySQL server, operating system, and hardware to their fullest potential. You'll also learn practical, safe, high-performance ways to scale your applications with replication, load balancing, high availability, and failover.

This second edition is completely revised and greatly expanded, with deeper coverage in all areas. Major additions include:

  • Emphasis throughout on both performance and reliability
  • Thorough coverage of storage engines, including in-depth tuning and optimizations for the InnoDB storage engine
  • Effects of new features in MySQL 5.0 and 5.1, including stored procedures, partitioned databases, triggers, and views
  • A detailed discussion on how to build very large, highly scalable systems with MySQL
  • New options for backups and replication
  • Optimization of advanced querying features, such as full-text searches
  • Four new appendices

The book also includes chapters on benchmarking, profiling, backups, security, and tools and techniques to help you measure, monitor, and manage your MySQL installations.

Read More Show Less

Product Details

  • ISBN-13: 9780596101718
  • Publisher: O'Reilly Media, Incorporated
  • Publication date: 6/30/2008
  • Edition description: Second Edition
  • Edition number: 2
  • Pages: 684
  • Sales rank: 1,460,766
  • Product dimensions: 8.96 (w) x 11.24 (h) x 1.30 (d)

Meet the Author

Baron Schwartz is a software engineer who lives in Charlottesville, Virginia and goes by the online handle of "Xaprb," which is his first name typed in QWERTY on a Dvorak keyboard. When he's not busy solving a fun programming challenge, he relaxes with his wife Lynn and dog Carbon. He blogs about software engineering at http://www.xaprb.com/blog/.

A former manager of the High Performace Group at MySQL AB, Peter Zaitsev now runs the mysqlperformanceblog.com site. He specializes in helping administrators fix issues with Web sites handling millions of visitors a day, dealing with terabytes of data using hundreds of servers. He is used to making changes and upgrades both to hardware to software (such as query optimization) in order to find solutions. He also speaks frequently at conferences.

Vadim Tkachenko was a Performance Engineer in at MySQL AB. As an expert in multithreaded programming and synchronization, his primary tasks were benchmarks, profiling, and finding bottlenecks. He also worked on a number of features for performance monitoring and tuning, and getting MySQL to scale well on multiple CPUs.

Jeremy 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 .com bubble bursting first-hand. He's been at Yahoo!® ever since, helping to put MySQL and other Open Source technologies to use in fun, interesting, and often very big ways. Starting with the popular and high-traffic Yahoo! Finance site, he worked to make MySQL part of the site's core infrastructure in large batch operations as well as real-time feed processing and serving content directly on the site. He then helped to spread "the MySQL religion" to numerous other groups within Yahoo!, including News, Personals, Sports, and Shopping. Nowadays he acts as Yahoo!'s MySQL guru, working with Yahoo!'s many engineering groups to get the most out of their MySQL deployments.

In 2000, he began writing for Linux Magazine and continues to do so today as a columnist and contributing editor. After over a year of active participation on the MySQL mailing list, he got the idea to write a book about MySQL. (How hard could it be, really?) You can still find him answering questions on the list today. Since 2001, Jeremy has been speaking about MySQL at various conferences (O'Reilly's Open Source Conference, PHPCon, The MySQL User Conference, etc.) and user groups in locations as far away as Bangalore, India. His favorite topics are performance tuning, replication, clustering, and backup/recovery. In more recent times, he's rediscovered his love of aviation, earning a Private Pilot Glider license in early 2003. Since then he's spent far too much of his free time flying gliders out of Hollister, California and Truckee, near Lake Tahoe. He hopes to soon earn his Commercial Pilot license and then go on to become a certified flight instructor someday. Occasional MySQL consulting also helps to pay for his flying addiction.

Jeremy rambles almost daily about technology and life in general on his weblog: www.jeremy.zawodny.com/blog/

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 abundant spare time Arjen indulges in cooking, gardening, reading, camping, and exploring the RepRap. Arjen's weblog is at http://arjen-lentz.livejournal.com/

Derek J. Balling has been a Linux system administrator since 1996. He

has helped build and maintain server infrastructure for companies like

Yahoo, and institutions like Vassar College. He has also written

articles for The Perl Journal and a number of online magazines, and is

on the Program Committee for the 2008 LISA Conference. He is currently

employed as the Data Center Manager for Answers.com.

When not working on computer-related issues, Derek enjoys spending

time with his wife Debbie, and their posse of animals (4 cats and a

dog). He also makes his opinion known on current events or whatever is

annoying him lately on his blog at http://blog.megacity.org/.

Read More Show Less

Table of Contents

How This Book Is Organized;
Software Versions and Availability;
Conventions Used in This Book;
Using Code Examples;
Safari® Books Online;
How to Contact Us;
Acknowledgments for the Second Edition;
Acknowledgments for the First Edition;
Chapter 1: MySQL Architecture;
1.1 MySQL's Logical Architecture;
1.2 Concurrency Control;
1.3 Transactions;
1.4 Multiversion Concurrency Control;
1.5 MySQL's Storage Engines;
Chapter 2: Finding Bottlenecks: Benchmarking and Profiling;
2.1 Why Benchmark?;
2.2 Benchmarking Strategies;
2.3 Benchmarking Tactics;
2.4 Benchmarking Tools;
2.5 Benchmarking Examples;
2.6 Profiling;
2.7 Operating System Profiling;
Chapter 3: Schema Optimization and Indexing;
3.1 Choosing Optimal Data Types;
3.2 Indexing Basics;
3.3 Indexing Strategies for High Performance;
3.4 An Indexing Case Study;
3.5 Index and Table Maintenance;
3.6 Normalization and Denormalization;
3.7 Speeding Up ALTER TABLE;
3.8 Notes on Storage Engines;
Chapter 4: Query Performance Optimization;
4.1 Slow Query Basics: Optimize Data Access;
4.2 Ways to Restructure Queries;
4.3 Query Execution Basics;
4.4 Limitations of the MySQL Query Optimizer;
4.5 Optimizing Specific Types of Queries;
4.6 Query Optimizer Hints;
4.7 User-Defined Variables;
Chapter 5: Advanced MySQL Features;
5.1 The MySQL Query Cache;
5.2 Storing Code Inside MySQL;
5.3 Cursors;
5.4 Prepared Statements;
5.5 User-Defined Functions;
5.7 Character Sets and Collations;
5.8 Full-Text Searching;
5.9 Foreign Key Constraints;
5.10 Merge Tables and Partitioning;
5.11 Distributed (XA) Transactions;
Chapter 6: Optimizing Server Settings;
6.1 Configuration Basics;
6.2 General Tuning;
6.3 Tuning MySQL's I/O Behavior;
6.4 Tuning MySQL Concurrency;
6.5 Workload-Based Tuning;
6.6 Tuning Per-Connection Settings;
Chapter 7: Operating System and Hardware Optimization;
7.1 What Limits MySQL's Performance?;
7.2 How to Select CPUs for MySQL;
7.3 Balancing Memory and Disk Resources;
7.4 Choosing Hardware for a Slave;
7.5 RAID Performance Optimization;
7.6 Storage Area Networks and Network-Attached Storage;
7.7 Using Multiple Disk Volumes;
7.8 Network Configuration;
7.9 Choosing an Operating System;
7.10 Choosing a Filesystem;
7.11 Threading;
7.12 Swapping;
7.13 Operating System Status;
Chapter 8: Replication;
8.1 Replication Overview;
8.2 Setting Up Replication;
8.3 Replication Under the Hood;
8.4 Replication Topologies;
8.5 Replication and Capacity Planning;
8.6 Replication Administration and Maintenance;
8.7 Replication Problems and Solutions;
8.8 How Fast Is Replication?;
8.9 The Future of MySQL Replication;
Chapter 9: Scaling and High Availability;
9.1 Terminology;
9.2 Scaling MySQL;
9.3 Load Balancing;
9.4 High Availability;
Chapter 10: Application-Level Optimization;
10.1 Application Performance Overview;
10.2 Web Server Issues;
10.3 Caching;
10.4 Extending MySQL;
10.5 Alternatives to MySQL;
Chapter 11: Backup and Recovery;
11.1 Overview;
11.2 Considerations and Tradeoffs;
11.3 Managing and Backing Up Binary Logs;
11.4 Backing Up Data;
11.5 Recovering from a Backup;
11.6 Backup and Recovery Speed;
11.7 Backup Tools;
11.8 Scripting Backups;
Chapter 12: Security;
12.1 Terminology;
12.2 Account Basics;
12.3 Operating System Security;
12.4 Network Security;
12.5 Data Encryption;
12.6 MySQL in a chrooted Environment;
Chapter 13: MySQL Server Status;
13.1 System Variables;
13.6 Replication Status;
Chapter 14: Tools for High Performance;
14.1 Interface Tools;
14.2 Monitoring Tools;
14.3 Analysis Tools;
14.4 MySQL Utilities;
14.5 Sources of Further Information;
Transferring Large Files;
Copying Files;
File Copy Benchmarks;
Invoking EXPLAIN;
The Columns in EXPLAIN;
Using Sphinx with MySQL;
Overview: A Typical Sphinx Search;
Why Use Sphinx?;
Architectural Overview;
Special Features;
Practical Implementation Examples;
Debugging Locks;
Lock Waits at the Server Level;
Lock Waits in Storage Engines;

Read More Show Less

Customer Reviews

Average Rating 4.5
( 6 )
Rating Distribution

5 Star


4 Star


3 Star


2 Star


1 Star


Your Rating:

Your Name: Create a Pen Name or

Barnes & Noble.com Review Rules

Our reader reviews allow you to share your comments on titles you liked, or didn't, with others. By submitting an online review, you are representing to Barnes & Noble.com that all information contained in your review is original and accurate in all respects, and that the submission of such content by you and the posting of such content by Barnes & Noble.com does not and will not violate the rights of any third party. Please follow the rules below to help ensure that your review can be posted.

Reviews by Our Customers Under the Age of 13

We highly value and respect everyone's opinion concerning the titles we offer. However, we cannot allow persons under the age of 13 to have accounts at BN.com or to post customer reviews. Please see our Terms of Use for more details.

What to exclude from your review:

Please do not write about reviews, commentary, or information posted on the product page. If you see any errors in the information on the product page, please send us an email.

Reviews should not contain any of the following:

  • - HTML tags, profanity, obscenities, vulgarities, or comments that defame anyone
  • - Time-sensitive information such as tour dates, signings, lectures, etc.
  • - Single-word reviews. Other people will read your review to discover why you liked or didn't like the title. Be descriptive.
  • - Comments focusing on the author or that may ruin the ending for others
  • - Phone numbers, addresses, URLs
  • - Pricing and availability information or alternative ordering information
  • - Advertisements or commercial solicitation


  • - By submitting a review, you grant to Barnes & Noble.com and its sublicensees the royalty-free, perpetual, irrevocable right and license to use the review in accordance with the Barnes & Noble.com Terms of Use.
  • - Barnes & Noble.com reserves the right not to post any review -- particularly those that do not follow the terms and conditions of these Rules. Barnes & Noble.com also reserves the right to remove any review at any time without notice.
  • - See Terms of Use for other conditions and disclaimers.
Search for Products You'd Like to Recommend

Recommend other products that relate to your review. Just search for them below and share!

Create a Pen Name

Your Pen Name is your unique identity on BN.com. It will appear on the reviews you write and other website activities. Your Pen Name cannot be edited, changed or deleted once submitted.

Your Pen Name can be any combination of alphanumeric characters (plus - and _), and must be at least two characters long.

Continue Anonymously
Sort by: Showing all of 6 Customer Reviews
  • Posted April 20, 2009

    The most complete analysis of MySQL performance I've found.

    Don't be misled by the title, though this book calls itself "High Performance MySQL," it is much more than that.
    The authors examine all of the different factors which contribute to the performance of an SQL server, and give tips, tricks, and tools to tune your MySQL server for the load that you are experiencing. Don't get me wrong; "High Performance" is certainly in there, but they look at all of the different definitions of performance, and talk about how to maximize (or not...) your MySQL installation for each kind of load.
    Further, the authors are not MySQL 'evangelists,' they take a realistic view of the capabilities and limitations of this software system.
    I would recommend this for anyone who is interested in MySQL server, and especially those who are considering switching to it from another product.

    3 out of 3 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Posted February 12, 2010

    Could be better

    I am a newb to Mysql and I bought this book in hopes it would help me optimize mysql. I am about half way through, but I feel the authors wrote this book for those who have experience with mysql and servers in general. For example, they explain website benchmarking, but the examples are poorly written for someone who has never done this before. For example, when discussing the full stack tools, they mention the http_load tool, but fail to tell you some key points, such as where to put the urls.txt file, and how to navigate to it with ssh. I also couldn't find anything online about this on net, but for those who may have the same question, upload it to your server and use a relative path though your shh program such as /home/your account/www/urls.txt. It's very frustrating when people who write these books leave out such important details and forget that some of us are new to the scene.

    1 out of 2 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted July 28, 2013

    0 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted July 15, 2013


    Hi he smiled

    0 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted July 15, 2013


    Hi..... *grins*

    0 out of 1 people found this review helpful.

    Was this review helpful? Yes  No   Report this review
  • Anonymous

    Posted January 11, 2010

    No text was provided for this review.

Sort by: Showing all of 6 Customer Reviews

If you find inappropriate content, please report it to Barnes & Noble
Why is this product inappropriate?
Comments (optional)