Although MySQL's source code is open in the sense of being publicly available, it's essentially closed to you if you don't understand it. In this book, Sasha Pachev -- a former member of the MySQL Development Team -- provides a comprehensive tour of MySQL 5 that shows you how to figure out the inner workings of this powerful database. You'll go right to heart of the database to learn how data structures and convenience functions operate, how to add new storage engines and configuration options, and much more.
The core of Understanding MySQL Internals begins with an Architecture Overview that provides a brief introduction of how the different components of MySQL work together. You then learn the steps for setting up a working compilable copy of the code that you can change and test at your pleasure. Other sections of the book cover:
Core server classes, structures, and API
The communication protocol between the client and the server
Configuration variables, the controls of the server; includes a tutorial on how to add your own
Thread-based request handling -- understanding threads and how they are used in MySQL
An overview of MySQL storage engines
The storage engine interface for integrating third-party storage engines
The table lock manager
The parser and optimizer for improving MySQL's performance
Integrating a transactional storage engine into MySQL
The internals of replication
Understanding MySQL Internals provides unprecedented opportunities for developers, DBAs, database application programmers, IT departments, software vendors, and computer science students to learn about the inner workings of this enterprise-proven database. With this book, you will soon reach a new level of comprehension regarding database development that will enable you to accomplish your goals. It's your guide to discovering and improving a great database.
Customer Reviews:
Avg. Customer Rating: 5.0 / 5.0
Provides excellent content for those working on MySQL:
I have been working on a project to make some changes to MySQL server
operation. Learned a lot through code review & trial and error! Recently
purchased this book and it is excellent! Wish we had it months ago. The author knows what he's talking about. Provides a great overview of the
architecture, file and subsystem layout. Also provides great information on using the 'built in' debug capability of the server -- very useful! I was expecting to be disappointed, I was not. The... more info
Lift the magic veil:
An excellent overview of the MySQL codebase, philosophy, and the design decisions that have made MySQL what it is today. Even though I have never touched the MySQL source before (it can be a daunting beast for the uninitiated), Sasha's explanations made me comfortable with the 'internals' and finally lifted the 'magic veil' off the engine. 'MySQL internals' has a perfect balance of high-level explanations, and low-level code samples to help you understand the inner workings of the database. After... more info
A very good book!:
Sasha knows the mysql code well, and he has done a fantastic job of presenting it. This is an important book for anyone who would like an enhanced understanding of mysql, including DBAs who might need a detailed understanding of locking or replication to. And it's a must-have for anyone working on a storage engine.
Provides clear insights:
Sasha Pachev's UNDERSTANDING MYSQL INTERNALS: DISCOVERING AND IMPROVING A GREAT DATABASE provides clear insights into one of the most popular open source codes on the market. It comes from a former member of the MySQL development team, so offers the author's own insights into the program's creation and use, covering everything from communication protocols between client and server to the parser and optimizer that execute SQL commands, advantages and disadvantages of using threads, and more technical... more info