Part IV. Schema Considerations and the Query Optimizer
13. Data Types
14. Indexes
15. Index Statistics
16. Histograms
17. The Query Optimizer
18. Locking Theory and Monitoring
Part V. Query Analysis
19. Finding Candidate Queries for Optimization
20. Analyzing Queries
21. Transactions
22. Diagnosing Lock Contention
Part VI. Improving the Queries
23. Configuration
24. Change the Query Plan
25. DDL and Bulk Data Load
26. Replication
27. Caching
Jesper Wisborg Krogh has worked with MySQL databases since 2006 both as an SQL developer, a database administrator, and for more than eight years as part of the Oracle MySQL Support team. He has spoken at MySQL Connect and Oracle OpenWorld on several occasions, and addition to his books, he regularly blogs on MySQL topics and has authored around 800 documents in the Oracle Knowledge Base. He has contributed to the sys schema and four Oracle Certified Professional (OCP) exams for MySQL 5.6 to 8.0.
He earned a PhD in computational chemistry before changing to work with MySQL and other software development in 2006. Jesper lives in Sydney, Australia, and enjoys spending time outdoors walking, traveling, and reading. His areas of expertise include MySQL Cluster, MySQL Enterprise Backup, performance tuning, and the Performance and sys schemas.
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.
You will:
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