Understanding MySQL Internals and over one million other books are available for Amazon Kindle. Learn more



or
Sign in to turn on 1-Click ordering
Sell Us Your Item
For a $2.00 Gift Card
Trade in
More Buying Choices
Have one to sell? Sell yours here
Start reading Understanding MySQL Internals on your Kindle in under a minute.

Don't have a Kindle? Get your Kindle here, or download a FREE Kindle Reading App.
Sorry, this item is not available in
Image not available for
Color:
Image not available

To view this video download Flash Player

 

Understanding MySQL Internals [Paperback]

Sasha Pachev
4.8 out of 5 stars  See all reviews (6 customer reviews)

List Price: $49.99
Price: $33.48 & FREE Shipping. Details
You Save: $16.51 (33%)
o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o o
In Stock.
Ships from and sold by Amazon.com. Gift-wrap available.
Want it tomorrow, May 24? Choose One-Day Shipping at checkout. Details
Free Two-Day Shipping for College Students with Amazon Student

Formats

Amazon Price New from Used from
Kindle Edition $22.79  
Paperback $33.48  
Shop the new tech.book(store)
New! Introducing the tech.book(store), a hub for Software Developers and Architects, Networking Administrators, TPMs, and other technology professionals to find highly-rated and highly-relevant career resources. Shop books on programming and big data, or read this week's blog posts by authors and thought-leaders in the tech industry. > Shop now

Book Description

April 17, 2007 0596009577 978-0596009571 1

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.


Frequently Bought Together

Understanding MySQL Internals + MySQL High Availability: Tools for Building Robust Data Centers + High Performance MySQL: Optimization, Backups, and Replication
Price for all three: $96.53

Buy the selected items together


Editorial Reviews

About the Author

Sasha Pachev graduated from the Brigham Young University in 1998 with a degree in Computer Science, worked on the MySQL development team in 2000-2002, and was the original developer of replication in MySQL. In 2003 he wrote his first book MySQL Enterprise Solutions. He currently lives in Provo, Utah with his wife Sarah and his five children working as an independent consultant with the emphasis on MySQL.

In spite of his great interest in computers, Sasha is equally passionate about distance running. He has won a number of marathons, has a personal best of 2:24:47, and is attempting to qualify for the US Olympic Trials. He feels it is important to help other runners reach their potential, and operates a web site http://FastRunningBlog.Com dedicated to that purpose.


Product Details

  • Paperback: 258 pages
  • Publisher: O'Reilly Media; 1 edition (April 17, 2007)
  • Language: English
  • ISBN-10: 0596009577
  • ISBN-13: 978-0596009571
  • Product Dimensions: 7 x 0.6 x 9.1 inches
  • Shipping Weight: 15.2 ounces (View shipping rates and policies)
  • Average Customer Review: 4.8 out of 5 stars  See all reviews (6 customer reviews)
  • Amazon Best Sellers Rank: #362,715 in Books (See Top 100 in Books)

More About the Author

Discover books, learn about writers, read author blogs, and more.

Customer Reviews

4.8 out of 5 stars
(6)
4.8 out of 5 stars
3 star
0
2 star
0
1 star
0
The author's writing style is clear and easy to read. Adrien Lamothe  |  2 reviewers made a similar statement
Recently purchased this book and it is excellent! John Murtari  |  1 reviewer made a similar statement
Most Helpful Customer Reviews
15 of 16 people found the following review helpful
5.0 out of 5 stars Excellent book, clearly explains MySQL internals May 25, 2007
Format:Paperback
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. I appreciate how, throughout the book, the author shares some of his "inside information" about MySQL's development. There is also a section where he examines the code stability of each module and speculates on what the future may hold for each module. The author's writing style is clear and easy to read. I found Understanding MySQL Internals interesting and fun, and surprisingly easy to read for a book covering such a sophisticated piece of software. The author also does a good job explaining the engineering trade-offs of different MySQL configurations. Speaking of configuration, the book shows you how to add your own configuration option to the mysqld daemon.

Chapter 7, the largest chapter in the book, is 41 pages long. It covers the MySQL storage engine interface. This chapter explains how to integrate your own custom storage engine into MySQL and contains the source code for two custom storage engine examples (one for MySQL 4.1, the other for version 5.1). You can download this source code from O'Reilly's web site. Despite this one long chapter, the book is surprising short, only 234 pages.

I believe this book has value outside of MySQL. It does a good job showing how MySQL is essentially a well designed piece of software: a high-performance, reliable Unix server. The book also touches on the multi-platform aspects of MySQL design. Those of you designing other types of server software may benefit from studying how MySQL is constructed.

This book isn't for everyone, but if you are serious about MySQL in particular or database software design in general then this title certainly deserves a look.
Comment | 
Was this review helpful to you?
3 of 4 people found the following review helpful
5.0 out of 5 stars Provides excellent content for those working on MySQL August 20, 2008
Format:Paperback|Amazon Verified Purchase
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 content was right
on the mark for those folks interested on working on server internals.
Comment | 
Was this review helpful to you?
4 of 6 people found the following review helpful
5.0 out of 5 stars Lift the magic veil December 31, 2007
Format:Paperback|Amazon Verified Purchase
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 reading this book you should be comfortable enough to tackle the source, and you'll also have deep understanding of the storage engines and how to configure them, how the query parser works, how the optimizer decides on the execution plan, and much more. This is a must read for any DBA, or a programmer who wants to see a great example of a high-performance, reliable UNIX server.
Comment | 
Was this review helpful to you?

What Other Items Do Customers Buy After Viewing This Item?


Forums

There are no discussions about this product yet.
Be the first to discuss this product with the community.
Start a new discussion
Topic:
First post:
Prompts for sign-in
 



So You'd Like to...


Create a guide


Look for Similar Items by Category