Well explained MySQL concepts,
This review is from: High Performance MySQL: Optimization, Backups, Replication, Load Balancing & More (Paperback)
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 indexes...as 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",
"5. Query Performance" and
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.