I prepared a list of the best books with author names for learning, optimizing, troubleshooting, and administrating your MySQL database. Most of these books are in my home library.
Books for Beginners
These books could be useful for beginners to learn MySQL from scratch and for developers with some experience to structure your knowledge.
Murach’s MySQL by Joel Murach
This is a good choice as the first book about MySQL. Joel has been writing and editing books about computer programming for over 20 years. He has written extensively on a wide range of Java, .NET, web, and database technologies.
Chapters:
- An introduction to MySQL (how to use MySQL Workbench, how to retrieve data from a single table, how to retrieve data from two or more tables, How to insert, update, and delete data);
- More SQL skills (how to code summary queries, how to code subqueries, how to work with data types, how to use functions);
- Database design and implementation (how to create databases, tables, and indexes and views);
- Stored program development (how to use transactions and locking, how to create stored procedures and functions, triggers and events);
- Database administration (an introduction to database administration, how to secure a database, how to backup and restore a database).
MySQL Explained: Your Step By Step Guide to Database Design by Andrew Comeau
One more example of a good book for beginners. The author is a software consultant and programmer. Since the 1990s, He has been designing database solutions both independently and for various companies.
Chapters:
- What are relational databases;
- How to install MySQL;
- What is MySQL Database Design;
- What is MySQL Database Normalization;
- What is MySQL Servers and Databases;
- What is MySQL Tables and Indexes;
- Design Overview: Human Resources and Training Database;
- Design Overview: Recipe Database;
- MySQL User Interfaces.
MySQL in a Nutshell by Russell J. T. Dyer
One more good book to learn MySQL basics. Dyer worked six years for MySQL Inc. as their Knowledge Base Editor. Now he works for MariaDB Corp. as their Curriculum Manager.
Chapters:
- Introduction to MySQL;
- Installing MySQL;
- MySQL Basics;
- Security and User Statements and Functions;
- Database and Table Schema Statements;
- Data Manipulation Statements and Functions;
- Table and Server Administration Statements and Functions;
- Replication Statements and Functions;
- Stored Routines Statements;
- Aggregate Clauses, Aggregate Functions, and Subqueries.
Learning MySQL: Get a Handle on Your Data By Hugh Williams, Saied Tahaghoghi
The book covers all basics: installation on Linux, Windows, and Mac OS X, querying using SQL, user management and security, backups, and recovery, tuning for improved efficiency.
Hugh E. Williams and Saied Tahaghoghi are working at Microsoft. Hugh is a software design engineer at Windows Live Search, Saied is a senior program manager at Microsoft Bing Search.
Chapters:
- Installing MySQL;
- Using the MySQL Monitor;
- Modeling and Designing Databases;
- Basic SQL;
- Working with Database Structures;
- Advanced Querying;
- Doing More with MySQL;
- Managing Users and Privileges;
- Backups and Recovery;
- Using an Options File;
- Web Database Applications.
Books for Experienced Developers
These books could help you to structure your knowledge and you can even find something new!
MySQL Pocket Reference: SQL Statements, Functions, Utilities, and More by George Reese.
This book could help you to be more efficient in your work and gives you instant reminders on how to use important MySQL functions.
The author is CTO of enStratus Networks, the leading cloud infrastructure management vendor for enterprise clouds. He wrote the first book, Database Programming with JDBC and Java in 1996.
Chapters:
- Setup;
- Command-Line Tools;
- Data Types;
- SQL;
- Operators;
- Functions;
- Storage Engines;
- Stored Procedures and Functions;
- Triggers.
MySQL Cookbook: Solutions for Database Developers and Administrators by Paul DuBois.
This book is good for beginners and professional database and web developers. It contains a lot of answers on how to solve specific problems – small pieces of code for each problem, hundreds of worked-out examples, and clear explanations for programmers who don’t have the time to solve MySQL problems from scratch.
Paul DuBois is one of the primary contributors to the MySQL Reference Manual. He is a member of the MySQL documentation team at Oracle Corp. He is also the author o a few books MySQL.
Chapters:
- Using the MySQL client program;
- Writing MySQL-Based Programs;
- Selecting Data from Tables;
- Table Management;
- Working with Strings;
- Working with Dates and Times;
- Sorting Query Results;
- Generating Summaries;
- Using Stored Routines, Triggers, and Scheduled Events;
- Working with Metadata;
- Importing and Exporting Data;
- Validating and Reformatting Data;
- Generating and Using Sequences;
- Using Joins and Subqueries;
- Statistical Techniques;
- Handling Duplicates;
- Performing Transactions;
- Introduction to MySQL on the Web;
- Generating Web Content from Query Results;
- Processing Web Input with MySQL;
- Using MySQL-Based Web Session Management;
- Server Administration;
- Security.
Understanding MySQL Internals: Discovering and Improving a Great Database by Sasha Pachev
It’s a comprehensive guide of MySQL 5 that shows you how to figure out the inner workings of this powerful database. You’ll learn how data structures and convenience functions operate, how to add new storage engines and configuration options.
Sasha Pachev was a part of the MySQL Development Team in 2000. He wrote and maintained the MySQL replication module up until 2002.
Chapters:
- MySQL History and Architecture;
- Nuts and Bolts of Working with the MySQL Source Code;
- Core Classes, Structures, Variables, and APIs;
- Client/Server Communication;
- Configuration Variables;
- Thread-Based Request Handling;
- The Storage Engine Interface;
- Concurrent Access and Locking;
- Parser and Optimizer;
- Storage Engines;
- Transactions;
- Replication.
MySQL Stored Procedure Programming: Building High-Performance Web Applications in MySQL by Guy Harrison
This book is about stored procedures: how it works and how to build them the right way.
The author is a CTO at Southbank Software – creators of dbKoda and ProvenDB. He is an Oracle ACE alumni. Author of several books about MySQL and OracleDB.
Chapters:
- Introduction to MySQL Stored Programs;
- MySQL Stored Programming Tutorial;
- Language Fundamentals;
- Blocks, Conditional Statements, and Iterative Programming;
- Using SQL in Stored Programming;
- Error Handling;
- Creating and Maintaining Stored Programs;
- Transaction Management;
- MySQL Built-in Functions;
- Stored Functions;
- Triggers;
- Using MySQL Stored Programs in Applications;
- Using MySQL Stored Programs with Java and other programming languages;
- Stored Program Security;
- Tuning Stored Programs and Their SQL;
- Basic SQL Tuning;
- Advanced SQL Tuning;
- Optimizing Stored Program Code;
- Best Practices in MySQL Stored Program Development.
Books for DBA
These books are really good for experienced DBA’s and developers.
High-Performance MySQL: Optimization, Backups, and Replication by Peter Zaitsev, Vadim Tkachenko, Baron Schwart.
This book is about using full power of MySQL database. You’ll learn advanced techniques from designing schemas, indexes, and queries to tuning your MySQL server.
Peter Zaitsev and Vadim Tkachenko were part of a performance team at MySQL AB. Baron Schwartz is the founder and CEO of VividCortex (database performance monitoring).
Chapters:
- MySQL Architecture and History;
- Benchmarking MySQL;
- Profiling Server Performance;
- Optimizing Schema and Data Types;
- Indexing for High Performance;
- Query Performance Optimization;
- Advanced MySQL Features;
- Optimizing Server Settings;
- Operating System and Hardware Optimization;
- Replication;
- Scaling MySQL;
- High Availability;
- MySQL in the Cloud;
- Application-Level Optimization;
- Backup and Recovery;
- Tools for MySQL Users.
High Availability MySQL Cookbook by Alex Davies.
Book describes different high availability options, including clustering and replication solutions within MySQL. Give you advice on how to improve the uptime of your MySQL databases, tune the database for optimal performance.
Chapters:
- High Availability with MySQL Cluster;
- MySQL Cluster Backup and Recovery;
- MySQL Cluster Management;
- MySQL Cluster Troubleshooting;
- High Availability with MySQL Replication;
- High Availability with MySQL and Shared Storage;
- High Availability with Block Level Replication;
- Performance Tuning.
MySQL Troubleshooting: What To Do When Queries Don’t Work by Sveta Smirnova.
Book is good for database developers. It’s about how to recover from performance problems, crashes, data corruption, and puzzling output.
Sveta Smirnova is a Principal Support Engineer for MySQL. Before she worked as Senior Principal Technical Support Engineer in the Bugs Verification Group of the MySQL Support Group at Oracle for more than 8 years. She works with MySQL for more than 15 years.
Chapters:
- Basics;
- Concurrency Issues;
- Effects of Server Options;
- MySQL’s Environment;
- Troubleshooting Replication;
- Troubleshooting Techniques and Tools;
- Best Practices.
MySQL High Availability: Tools for Building Robust Data Centers by Charles Bell, Mats Kindahl, Lars Thalmann.
This practical book is about: replication, clusters, and monitoring features written by engineers who designed many of the tools covered, reveals undocumented or hard-to-find aspects of MySQL reliability and high availability.
Dr. Charles A Bell is a Senior Software Engineer at Oracle. Dr. Mats Kindahl is a senior principal software developer working on the MySQL server, main architect and implementor of MySQL’s row-based replication. Dr. Lars Thalmann is the development director for MySQL Replication, Backup, Connectors, Utilities, and Fabric.
Chapters:
- MySQL Replication Fundamentals;
- The Binary Log;
- Replication for High Availability;
- MySQL Replication for Scale-Out;
- Advanced Replication;
- Getting Started with Monitoring;
- Monitoring MySQL;
- Storage Engine Monitoring;
- Replication Monitoring;
- Replication Troubleshooting;
- Protecting Your Investment;
- MySQL Enterprise;
- Cloud Computing Solutions;
- MySQL Cluster;
- Replication Tips and Tricks;
MySQL 8 Administrator’s Guide Effective Guide to Administering High-Performance MySQL 8 Solutions by By Chintan Mehta, Ankit Bhavsar, Hetal Oza, Subhash Shah.
This is a step by step guide on how to monitor, manage, and secure your MySQL 8 + best practices for optimal use. This book is intended for MySQL administrators.
Chapters:
- Installing and Upgrading MySQL 8;
- MySQL 8 – Using Programs and Utilities;
- MySQL 8 Data Types;
- MySQL 8 Database Management;
- MySQL 8 Storage Engines;
- Indexing in MySQL 8;
- Replication in MySQL 8;
- Partitioning in MySQL 8;
- MySQL 8 – Scalability and High Availability;
- MySQL 8 – Security;
- Optimizing MySQL 8;
- Extending MySQL 8;
- MySQL 8 Best Practices and Benchmarking;
- Troubleshooting MySQL 8.
MySQL 8 Cookbook: Over 150 recipes for high-performance database querying and administration by Karthik Appigatla.
This book is about storing, retrieving, and manipulating data using the latest MySQL 8 features. Practical recipes on effective administration with a focus on security, performance tuning, troubleshooting. It contains tips, tricks, and best practices for designing, developing, and administering MySQL 8 database.
Chapters:
- Installation
- Using MySQL
- Using MySQL (Advanced)
- Configuring MySQL
- Transactions
- Binary Logging
- Backup
- Restoring data
- Replication
- Table Maintenance
- Managing Tablespace
- Managing Logs
- Performance Tuning
- Security
MySQL Administrator’s Bible by Sheeri K. Cabral, Keith Murphy
This resource contains information for everyone: from beginner to experienced MySQL administrators. You can find essential coverage of the fundamentals of MySQL database management: basic database features and functions, coverage of SQL queries, data and index types, store procedures and functions, triggers and views, transactions.
Chapters:
- Introduction to MySQL;
- Installing and Upgrading MySQL Server;
- Accessing MySQL;
- How MySQL Extends and Deviates from SQL;
- MySQL Data Types;
- MySQL Index Types;
- Stored Routines, Triggers, and Events;
- MySQL Views;
- Transactions in MySQL;
- MySQL Server Tuning;
- Storage Engines;
- Caching with MySQL;
- Backups and Recovery;
- User Management;
- Partitioning;
- Logging and Replication;
- Measuring Performance;
- Query Analysis and Index Tuning;
- Monitoring Your Systems;
- Securing MySQL;
- The MySQL Data Dictionary;
- Scaling and High Availability Architectures.