Paperback: 258 pages
Publisher: O'Reilly Media; 1 edition (April 20, 2007)
Product Dimensions: 7 x 0.6 x 9.2 inches
Shipping Weight: 15.2 ounces (View shipping rates and policies)
Average Customer Review: 4.3 out of 5 stars See all reviews (7 customer reviews)
Best Sellers Rank: #832,525 in Books (See Top 100 in Books) #46 in Books > Computers & Technology > Databases & Big Data > Relational Databases #106 in Books > Computers & Technology > Databases & Big Data > MySQL #121 in Books > Computers & Technology > Programming > Languages & Tools > XML
MySQL is assuming increased importance as an enterprise database and has become the de-facto standard with web hosting companies. A number of books have appeared in recent years, covering various aspects of MySQL. In Understanding MySQL Internals, Sasha Pachev, a MySQL-focused consultant and former member of the MySQL development team, takes us on a tour of how MySQL works and how it is built.Starting with an overview of MySQL history and architecture, the book quickly moves us through working with the source code to build and run the product in a debugger. Drawing on his deep experience with the software, Mr. Pachev explains the coding conventions used to develop MySQL and why you should use them when modifying the software yourself.The author delineates the different functional "modules" (a term he coined himself to better explain the database, technically speaking there are no defined modules in MySQL's architecture) of MySQL and how they interrelate. Herein lies the key to how this book teaches the reader the vast intricacy of such a complex piece of software. The author recognizes the subject is huge and the source code changing. What he does in the book is serve as our tour guide, driving us through the various areas and explaining as much relevant information as he reasonably can. He constantly illustrates key pieces of source code and data structures; but perhaps more importantly he makes reference to the actual source files utilized by each functional component of the system, while encouraging us to explore further on our own. His approach is very much "top down".As he takes us on this tour, the author explains many of the design decisions behind the various MySQL components, often imparting the historical perspective behind them.