Shop now Learn more Shop now Up to 50% off Fashion Cloud Drive Photos Shop now Amazon Fire TV Shop now Halloween Pets Shop now Shop Fire Shop Kindle Voyage Listen in Prime Learn more Shop now
High Performance MySQL: Optimization, Backups, Replicatio... and over 2 million other books are available for Amazon Kindle . Learn more
Buy Used
+ £2.80 UK delivery
Used: Very Good | Details
Condition: Used: Very Good
Comment: Unbeatable customer service, and we usually ship the same or next day. Over one million satisfied customers!
Have one to sell?
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See this image

High Performance MySQL: Optimization, Backups, Replication, Load Balancing & More (Advanced Tools and Techniques for Mysql Administrators) Paperback – 18 Apr 2004

See all formats and editions Hide other formats and editions
Amazon Price
New from Used from
Kindle Edition
"Please retry"
"Please retry"
£8.19 £0.74

There is a newer edition of this item:

Special Offers and Product Promotions

  • Save £20 on with the aqua Classic card. Get an initial credit line of £250-£1,200 and build your credit rating. Representative 32.9% APR (variable). Subject to term and conditions. Learn more.

No Kindle device required. Download one of the Free Kindle apps to start reading Kindle books on your smartphone, tablet and computer.

  • Apple
  • Android
  • Windows Phone

To get the free app, enter your e-mail address or mobile phone number.

Product details

More About the Authors

Discover books, learn about writers, and more.

Product Description

Book Description

Advanced Tools & Techniques for MySQL Administrators

About the Author

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:

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 served on the Program Committee for the 2008 LISA (Large Installation System Administration) Conference. He is currently employed as the Data Center Manager for

When not working on computer-related issues, Derek enjoys spending time with his wife Debbie, and their posse of animals (four cats and a dog). He also makes his opinion known on current events or whatever is annoying him lately on his blog at

See all Product Description

Inside This Book

(Learn More)
Explore More
Browse Sample Pages
Front Cover | Copyright | Table of Contents | Excerpt | Index
Search inside this book:

Customer Reviews

There are no customer reviews yet on
5 star
4 star
3 star
2 star
1 star

Most Helpful Customer Reviews on (beta) 26 reviews
62 of 63 people found the following review helpful
Well explained MySQL concepts 10 July 2004
By Ales Kavsek - Published on
Format: Paperback Verified Purchase
As an Oracle DBA, I was looking for a book that can help me better understand MySQL core concepts and differences compared to my primary working platform. I was looking for a book with the flavor of Oracle Concepts Manual. I partially read official MySQL reference manual but didn't find (get?) all the answers (nor I really enjoyed reading it - sorry AB doc. team!).
I think this book filled my knowledge gap on MySQL perfectly. Actually, this book could easily bear different title, such as "MySQL concepts guide" or something like that. You'll probably read the book in a couple of days, thanks to the author's clear writing style.
Let me give you an example. Some technical topics are difficult to explain in a few sentences, like the one on letter I (Isolation) from ACID rules for 'safe' transactions. Just compare the explanation on "phantom reads" from this book with the one you'll find in Oracle Concepts Manual (freely available on-line from OTN). Now, which one did you understand on the first pass? ;-)
Thanks to clear and short explanations, right from the beginning of the book, I learned some important technical facts about MySQL that I could easily put in perspective with my Oracle background. For example:
-"All InnoDB tables have primary keys"
-"InnoDB tables are similar to Oracle index-organized tables."
-"MySQL will only ever use one index per table per query!"
-"MySQL doesn't cache rows for MyISAM tables, only opposed to InnoDB"
-"...counts are very fast on MyISAM tables and slow on InnoDB tables..."
Obviously the chapters that I liked the most in this book are the ones that covers core things very well:
"2. Storage Engines",
"4. Indexes",
"5. Query Performance" and
"10. Security".
All other chapters are fine but not essential for my current use of MySQL (like the excellent chapter on replication where it's obvious that Jeremy poses vast practical experience with replication from his workplace at Yahoo!).
The only complaint that I have is the one on "Storage Engines" chapter. In my opinion multi storage engine architecture is the most important advantage of MySQL over all other database vendors
products. I wish author's went a little deeper with the details (and thanks but no thanks, I don't want to read source code ;-), especially InnoDB engine is not covered enough (hmm...or maybe it's just me, after all :-).
Overall this book is highly recommended to all DBAs, the existing MySQL DBAs as well as to all others that work with other RDBMS and want a fast way to pick the most important technical nuances of MySQL.
18 of 18 people found the following review helpful
Make MySQL efficient 7 Jun. 2004
By Harold McFarland - Published on
Format: Paperback
While the authors go over the basics of MySQL briefly in the first couple of chapters this is not a book for the new MySQL administrator. It assumes a good deal of basic knowledge about MySQL. On the other hand, if you know the basics and need to get that extra knowledge to move your system from one that just works to one that truly performs then this book is for you. From the initial steps of benchmarking your system and tweaking the indexes the book moves on to improving your performance through optimizing queries and server performance tuning. This includes examining all aspects of your system from disk and file system selection to minor configuration changes that may make great changes in performance. Once the server is working at its optimum for your needs the book turns to how to scale your SQL system up to multiple servers and configure replication, load balancing, and high availability systems. The main text of the book ends with a section on backup, recovery, and security. If you need performance, reliability and security beyond the standard configuration and need to maximize throughput this is the book you will want to have at hand. "High Performance MySQL" is one of the best optimization and performance books available for the intermediate to advanced user of MySQL - very highly recommended.
16 of 17 people found the following review helpful
Good book overall, but may grow obsolete to MySQL5. 15 Jan. 2006
By Sean O'Donnell - Published on
Format: Paperback
I mainly bought this book so that I could get some insight into 'advanced' Storage and Replication techniques w/ MySQL.

Jeremy provided some pretty detailed and easy to understand examples, with decently comprehensive descriptions which did help answer some of the questions I had.

I'd suggest this book to anyone who wants to understand the principles of Storage and Replication techniques in MySQL4. This book is definitely a kick in the right direction, but does not take you too far, so I'd say this is for intermediate users.

MySQL5 has many new storage and replication features not mentioned in this book, some of which resolve a lot of the 'problematic' storage and replication issues that this book discusses, thus making SOME of the content irrelevant (or obsolete) to MySQL5. However, the overall principles remain the same, and can be applied to either version.

If you're using MySQL4, then this book is for you!

If you're using MySQL5, you may want to wait for a revised edition of this book.

I sure hope Jeremy is working on a revised version for MySQL5! *hint*hint* =)
6 of 6 people found the following review helpful
A must for MySQL Administrators 15 Dec. 2004
By ADR - Published on
Format: Paperback
If you interact with MySQL on a regular basis, High Performance MySQL should be the next book that you read. High Performance MySQL does a great job at covering techniques on benchmarking your current configuration and how to increase performance at 3 major levels: 1) database architecture, 2) server tuning, and 3) scaling horizontally (with multiple servers).

Database architecture is where it really begins. Zawodny and Balling did a great job explaining the different storage engines along with their advantages and disadvantages, working with transactions, how to get the most of your database through indexing and how to optimize query performance.

Zawodny and Balling also did an excellent job on covering server tuning. It just wasn't a turtorial on 'this is how you should modify your configuration files.' The authors whent into great detail in explaining different hardware configurations, what to look for in RAID configurations and different filesystems, and how to solve various bottlenecks.

For the most part, the authors reserved a complete 60 pages of the book for Replicaiton and Load Balancing configurations. The authors provided several scenarios to choose from along with the advantages and disadvantages of each.
11 of 13 people found the following review helpful
THE reference for MySQL Administrators 30 April 2004
By Mike Hillyer - Published on
Format: Paperback
I had the pleasure of being one of the technical reviewers of the book, and seeing the book is now available it's probably a good time to give my opinion on their work.
This book is aimed at the MySQL developer/administrator who has a server in place and now needs to start squeezing more performance out of it. I would say this is a pretty common demographic and the book addresses this group extremely well. I wish I had a copy of this book when I got into that phase, and even now I find myself pulling out my copy to look up some of the good tips and tricks that fill this book.
The ordering of the chapters is effective and leads the user through the stages of tweaking a server. This book does not really cover the absolute basics such as SELECT syntax, which suits me just fine.
The authors start out with a very in-depth discussion of table-types. They not only give the features of each table type, they also discuss the benefits and tradeoffs involved in choosing among the various table types. Transactions are covered in detail, including a rundown of the different isolation levels and how to choose the best isolation level for your application. I particularly liked that the table type choices were discussed in terms of scenarios that the reader may encounter, such as logging, catalogs, and even CD-ROM based content.
The authors wisely put a chapter on benchmarking right at the start of the book. Without having some idea of proper benchmarking techniques it can be very difficult to determine what changes benefit your servers performance. This book covers not only benchmarking methodology but also some of the more common benchmarking tools available to a MySQL administrator.
Indexing is one of the first and more effective ways to improve query performance, and the authors cover the subject quite well. Not only are typical indexing techniques covered, but there are also great explanations of how things work "under the hood". We learn of the various indexing methods in use with the server, such as B-TREEs, Hash tables, and clustered indexes.
Now that the reader has a firm grasp on how indexing works and how to benchmark queries, the authors introduce us to the concept of query analysis. The authors explain how the MySQL query optimizer works to execute a query and then give an extensive discussion of using the EXPLAIN system and how to use it to determine whether your queries are fully optimized. Advice is given on various ways to improve query performance, including use of the query cache.
Of particular interest to me was chapter 6: Server Performance. This chapter covers everything from choosing memory to selecting a file system for your database server. There is good advice on selecting disks and choosing RAID systems. The chapter also does a great job of covering how to identify and deal with bottlenecks, whether at the CPU, file, or kernel levels. This chapter is a must-read for anyone looking at purchasing a new machine to host a MySQL database, as it gives excellent tips regarding what choices you need to make when choosing server components.
Jeremy Zawodny knows replication. Through his work at Yahoo he has been of MySQL AB's largest users of replication, and his feedback to the MySQL development team has made it's way into the end product we currently use in MySQL 4.1. This degree of experience is obvious in chapter 7: Replication. There is great coverage of the steps needed to create a replication scheme, and there is a great discussion of the different replication layouts available to you when configuring multiple servers in a replication scheme. In addition to providing excellent coverage of setting up replication, there is also great coverage of monitoring and troubleshooting replication.
Chapter 8 takes replication a step further by introducing the concept of load balancing and high availability. A thorough discussion of load balancing is given and various high-availability solutions are discussed. The authors provide great coverage of load-balancing concepts and cover some of the pitfalls you may encounter if you are only accustomed to HTTP load balancing (which can vary greatly from MySQL load balancing).
If you pick this book up off the shelf at a bookstore but can't afford to buy it, make sure you read chapter 9. A DBA's most vital task is performing backups and other disaster prevention tasks. Chapter 9 covers all the standard backup tools available with MySQL, and also gives great coverage of how you can roll your own backup solution.
The main body of the book is rounded out with chapter 10: Security. The security chapter covers not only the basics of MySQL authentication, it covers some advanced scenarios and helps the reader understand the internal workings of MySQL authentication mechanisms. In addition to covering MySQL security mechanisms, the chapter goes on to discuss operating system security and security concepts such as data encryption. A brief tutorial is even given for setting a MySQL server up in a chroot environment for increased security.
All in all I thought this book was excellent. Windows users with very little background in Linux or other UNIX-like operating systems may encounter unfamiliar terms and sections that are not relevant (for example, the mytop utility covered in Appendix B is not available for Windows), but Windows users should still get a lot out of this book (besides, if you need high-performance from MySQL you should not be using Windows as your base OS). I found the book to be an excellent read and highly recommend it.
And finally, I I had no problem with Zawodny & Balling not pointing out MySQL's limitations: This book is for existing MySQL Administrators, who will already be aware of it's limitations. In addition, the features mentioned are already available in MySQL 4 and/or 5, available for download from the MySQL web site.
Were these reviews helpful? Let us know