MySQL 8 Query Performance Tuning
Identify, analyze, and improve poorly performing queries that damage user experience and lead to lost revenue for your business. This book will help you make query tuning an integral part of your daily routine through a multi-step process that includes monitoring of execution times, identifying candidate queries for optimization, analyzing their current performance, and improving them to deliver results faster and with less overhead. Author Jesper Krogh systematically discusses each of these steps along with the data sources and the tools used to perform them.
MySQL 8 Query Performance Tuning aims to help you improve query performance using a wide range of strategies. You will know how to analyze queries using both the traditional EXPLAIN command as well as the new EXPLAIN ANALYZE tool. You also will see how to use the Visual Explain feature to provide a visually-oriented view of an execution plan. Coverage of indexes includes indexing strategies and index statistics, and you will learn how histograms can be used to provide input on skewed data distributions that the optimizer can use to improve query performance. You will learn about locks, and how to investigate locking issues. And you will come away with an understanding of how the MySQL optimizer works, including the new hash join algorithm, and how to change the optimizer’s behavior when needed to deliver faster execution times. You will gain the tools and skills needed to delight application users and to squeeze the most value from corporate computing resources.
What You Will Learn
- Monitor query performance to identify poor performers
- Choose queries to optimize that will provide the greatest gain
- Analyze queries using tools such as EXPLAIN ANALYZE and Visual Explain
- Improve slow queries through a wide range of strategies
- Properly deploy indexes and histograms to aid in creating fast execution plans
- Understand and analyze locks to resolve contention and increase throughput
Who This Book Is For
Database administrators and SQL developers who are familiar with MySQL and need to participate in query tuning. While some experience with MySQL is required, no prior knowledge of query performance tuning is needed.
The official location for the errata is in the GitHub repository for the book in the file errata.pdf. (No errata has been published yet.) If you clone the repository, you can update the errata using the git pull command. This will also pull in any updated example files.