Become a fan of Slashdot on Facebook

 



Forgot your password?
typodupeerror
×
Data Storage Books Media Databases Programming Software Security Book Reviews

High Performance MySQL 307

swsuehr (Steve Suehring) writes "Knowing that Jeremy Zawodny works with MySQL in a highly demanding environment at Yahoo! Finance, I have to admit that I was somewhat anxious to crack open a copy of the book High Performance MySQL published by O'Reilly and written by Jeremy and Derek J. Balling. With such high expectations, it would be easy to be disappointed with the content or level of the material in the book. Far from disappointing, High Performance MySQL was exactly what I had hoped it would be and more." Read on for the rest of Suehring's review.
High Performance MySQL
author Zawodny & Balling
pages 294
publisher O'Reilly
rating Excellent
reviewer Steve Suehring
ISBN 0596003064
summary Optimization, Backups, Replication, Load Balancing & More

With a title like High Performance MySQL, the reader should not expect assistance with tasks such as installation or the basics of SQL. The authors acknowledge that the book isn't meant for the MySQL beginner. Even so, the book does spend a little time going over a refresher of MySQL. If the reader is looking for a book on the basics of MySQL, though, I'd recommend picking up a different title. I might be so brazen as to suggest looking at the book on MySQL that I wrote a couple years ago, but I'll leave it for the reader to find an appropriate title for their level of knowledge with MySQL.

The book is broken out into ten chapters, beginning with a chapter on the basics of MySQL as seen from someone with some level of MySQL experience. (And since I am someone with some level of MySQL knowledge, this chapter didn't seem to be too painful of a read.) That statement begs for a further explanation. I find it painful to read books that claim to have advanced topics but find it necessary to spend (or waste) time by giving yet another explanation of how to type ./configure; make; make install in the beginning chapter. In this regard, I find High Performance MySQL to be quite good at providing the appropriate level of explanation for the audience.

The first pages alone are a great starting point for those who are wondering about the performance as it relates to the different versions of MySQL. A discussion of the binary versions of MySQL versus the source code versions gives the reader a good understanding of the implications of this important decision. Choosing correctly between the versions of MySQL can help to maximize performance.

Though only the first chapter is titled "Back to Basics," most chapters include some basic or background information pertinent to that chapter. For example, both the query and index performance-related chapters include sections with the word 'Basic' in their titles. These two chapters, "Index Performance" and "Query Performance," cover topics often misunderstood when considering performance on a database. Naturally, any database administrator worth their pay (insert your own joke here) will tell you that an index can help to improve performance. But High Performance MySQL takes it a step further by diving into why you might use a particular index given your database needs. This type of practical information is common throughout the book. Rather than just give the reader a listing of the indexes (which are mostly common among RDBMS anyway), the authors choose to tell you why you might choose one method over another.

Other chapters within High Performance MySQL include chapters on server performance tuning, replication, load balancing, and high-availability, backup and recovery, and security. I've followed MySQL forums and mailing lists over the years and some of the more common questions relate to MySQL security. The chapter on security gives the reader a great explanation of the MySQL GRANT tables and includes a sidebar on the significance of 'localhost' in MySQL which nearly always seems to be a source of confusion, though maybe not for the reader of this particular book. Like other chapters, the security chapter includes tips for the underlying environment upon which MySQL operates. For example, regardless of how good the MySQL database permissions are configured, if another piece of software on the server isn't kept up to date then the entire server, including the MySQL data, could be compromised.

Looking back at the book, I might have laid the chapters out in a different order or provided more structure through sections of the book. However, this can be dismissed as personal opinion and is non-substantive anyway. I believe High Performance MySQL is an excellent choice for the MySQL administrator or developer not only looking to improve their database performance but also to improve his knowledge of MySQL.


You can purchase High Performance MySQL from bn.com. (And the book that Suehring alludes to is the MySQL Bible . Slashdot welcomes readers' book reviews -- to see your own review here, read the book review guidelines, then visit the submission page.

This discussion has been archived. No new comments can be posted.

High Performance MySQL

Comments Filter:
  • No Thanks (Score:4, Funny)

    by AKAImBatman ( 238306 ) * <akaimbatman@gmaYEATSil.com minus poet> on Wednesday October 20, 2004 @02:31PM (#10578063) Homepage Journal
    You can keep "High Performance MySQL". I'm holding out for "Incredible Data Integrity Management with MySQL". :-D
  • by Anonymous Coward on Wednesday October 20, 2004 @02:32PM (#10578066)
    High Performance MySQL, published by Oxymoron Press, Inc.
  • by strictfoo ( 805322 ) <strictfoo-signup AT yahoo DOT com> on Wednesday October 20, 2004 @02:34PM (#10578099) Journal
    I'm going all out here.

    MySQL is better than PostgreSQL
    Redhat is better than Debian
    Windows XP is better than MAC OS X
    Bush is better than Kerry
    Conservatives are beter than Liberals
    Americans are better than Europeans

    etc. etc. etc.
  • by Exmet Paff Daxx ( 535601 ) on Wednesday October 20, 2004 @02:35PM (#10578102) Homepage Journal
    Indeed, PostgreSQL is awesome.
  • by amorsen ( 7485 ) <benny+slashdot@amorsen.dk> on Wednesday October 20, 2004 @02:49PM (#10578273)
    The important thing is, does it tell you how to set up and manage highly distributed system managing gigabytes of data under high transaction volumes?

    I believe you missed something. The book is about MySQL.

  • by LoveMuscle ( 42428 ) on Wednesday October 20, 2004 @02:58PM (#10578386)
    Bah.. You forgot..

    Emacs is better than vi
    Abortion is a woman's right
    Gun control means using both hands
    Christianity sucks, the bible is just a book

  • by ShatteredDream ( 636520 ) on Wednesday October 20, 2004 @03:11PM (#10578525) Homepage
    In recent news MySQL has defied all industry expectations in its latest performance tests. For the first time, MySQL wrote data faster than a second grader learning to write in cursive.

    Industry insiders have hinted that an organization known as Infernal Industries has become a major investor in MySQL. Headed by one Baal Diablos II, this rising star has come to challenge Microsoft and Oracle for the title of most evil corporate entity.

    When asked for comment, Mr. Diablos replied "we have 6,000 years of investment experience. We created the modern labor market with our first employees, Adam and Eve. Today, we are becoming the biggest player in IT products thanks to our efforts to bring this formidible experience to the table."

    The new, high performance MySQL preemptively versioned at 6.66 comes with a complimentary familiar with no less than 20 years of SQL experience. When asked whether this new round of investment would cause the Roman Catholic Church to divest itself of MySQL products, the Holy See responded that it is strongly looking into PostegreSQL.
  • by JAgostoni ( 685117 ) on Wednesday October 20, 2004 @03:25PM (#10578700) Homepage Journal
    In this case you're a third reply troll. Ha ... ha ... ha... but seriously folks, I'm here all night. Try the veal.
  • by gnuLNX ( 410742 ) on Wednesday October 20, 2004 @03:30PM (#10578742) Journal
    guess so. All us stupid mysql people...like the guy's running yahoo finance...must not have any clue what we are doing.

    say what you will but for our companies needs I guarantee you that MySQL is more than suffecient...we don't have a lot of changes on the db....plain and simple...a waste of money!..

    But then you propbably know more about my companies db than I do so I will shut up now.
  • by lewiscr ( 3314 ) on Wednesday October 20, 2004 @04:17PM (#10579207) Homepage
    You're either overindexing the tables, or you missed a few performance parameters.

    I'll admit that INSERTs/UPDATEs are slower than SELECT, but they shouldn't be that painful. My Database is approximate 50/50 read/write by byte, and 66/33 read/write by query. During peak updates, I 'load data infile' about 10 Gig of data in 2 hours. It uses about 2 of the 4 Sparc 450MHz processors. 'load data infile' is quite a bit more efficient for bulk loads that 1 million INSERT statements.

    I'll assume you have a reason for RAID 0, and have some insurance against the inevitable failure. My system uses a RAID 0 stripe, but only because I know that each "disk" is actually mirrored by the EMC behind the scenes.
  • by Anonymous Coward on Thursday October 21, 2004 @04:50AM (#10584193)
    "So..you've got a big application that just works fine in MySQL, but you want to convert? Here's what you do"

    Just say "NO" ;-)

"Ninety percent of baseball is half mental." -- Yogi Berra

Working...