Stuck with bugs, performance problems, crashes, data corruption, and puzzling output? If you’re a database programmer or DBA, they’re part of your life. The trick is knowing how to quickly recover from them. This unique, example-packed book shows you how to handle an array of vexing problems when working with MySQL.
Written by a principal technical support engineer at Oracle, MySQL Troubleshooting provides the background, tools, and expert steps for solving problems from simple to complex—whether data you thought you inserted doesn’t turn up in a query, or the entire database is corrupt because of a server failure. With this book in hand, you’ll work with more confidence.
Understand the source of a problem, even when the solution is simple
Handle problems that occur when applications run in multiple threads
Debug and fix problems caused by configuration options
Discover how operating system tuning can affect your server
Use troubleshooting techniques specific to replication issues
Get a reference to additional troubleshooting techniques and tools, including third-party solutions
Learn best practices for safe and effective troubleshooting—and for preventing problems
Chapter 1 Basics
Wrong Results from a SELECT
When the Problem May Have Been a Previous Update
Getting Information About a Query
Tracing Back Errors in Data
When the Server Does Not Answer
Issues with Solutions Specific to Storage Engines
Chapter 2 You Are Not Alone: Concurrency Issues
Locks and Transactions
How Concurrency Affects Performance
Other Locking Issues
Replication and Concurrency
Effectively Using MySQL Troubleshooting Tools
Chapter 3 Effects of Server Options
Variables That Are Supposed to Change the Server Behavior
Options That Limit Hardware Resources
Using the --no-defaults Option
Haste Makes Waste
The SET Statement
How to Check Whether Changes Had an Effect
Descriptions of Variables
Chapter 4 MySQL’s Environment
Physical Hardware Limits
Operating System Limits
Effects of Other Software
Chapter 5 Troubleshooting Replication
Displaying Slave Status
Problems with the I/O Thread
Problems with the SQL Thread
Chapter 6 Troubleshooting Techniques and Tools
Effects of the Environment
Errors and Logs
Localizing the Problem (Minimizing the Test Case)
General Steps to Take in Troubleshooting
Special Testing Tools
Chapter 7 Best Practices
Gathering the Information You Need
Think About It!
Appendix Information Resources
Resources Containing Information That Is Usually Useful
Sveta Smirnova is a Principal Technical Support Engineer in the BugsAnalysis Support Group at MySQL at Oracle. She works on trickysupport issues and MySQL software bugs on a daily basis. Before starting at MySQL in 2006, she worked as web developer on severalclosed CRM systems. She is an active participant in the open sourcecommunity. Her main interests in recent years is solving DBA problems and finding ways to semi-automate this process.
The animal on the cover of MySQL Troubleshooting is is a Malayan badger (Mydaus javanensis), also known as a Javan stink badger, a Sunda stink badger, a teledu, or an Indonesian stink badger. The genus Mydaus includes one other species, the Palawan stink badger (M. marchei). The stink badgers were long considered part of the badger family, but recent DNA studies have shown that they are more closely related to the skunks.
Stink badgers have brownish-black fur, with a white or yellow cap and a long skunk-like stripe down the back. Their long muzzles are capped by pig-like snouts, and they have long curved claws on their front feet. They measure 12–20 inches long (including a very short tail) and may weigh up to 8 pounds.
Stink badgers are found in Indonesia, Malaysia, and the Phillipines. They live in forests and nearby open areas, and reside at many elevations on the mountainous islands. The nocturnal animals live in underground burrows, which they may dig themselves or appropriate from (or share with) porcupines. They eat eggs, insects, plants, and carrion; their claws and snouts are used to dig and root for earthworms. They usually have a litter of two or three, but little else is known about their social lives and breeding.
Lydekker commented on the species’ “evil odour” in his Royal Natural History, calling the spray from its rear glands “foetid in the extreme.” The secretions are used for defense against predators, which include the Javan hawk-eagle, feral cats, and tigers.
The cover image is from Lydekker’s Royal Natural History. The cover font is Adobe ITC Garamond. The text font is Linotype Birka; the heading font is Adobe Myriad Condensed; and the code font is LucasFont’s TheSansMonoCondensed.
This book has 7 chapters. On the chapter one, It's explained the simplest about something what I should know before; SQL syntax, MySQL command, some variables and etc. On the chapter two, "You are Not Alone: Concurrency Issues" – Concurrency is important for Database. This chapter is helpful for it. What I learn? For example: Lock and Transactions, Matadata Locking, Monitoring InnoDB Transaction and Concurrency Problems, etc. I believe a lot of DBAs see the lock/concurrency problem. It's good chapter, that's helpful. Anyway, MySQL has a lot of options/variables, So It's necessary to learn about them. The chapter three, I learned about some options/variables, that effect with database. Good!
That was a little from this book. I rather believe this book is useful for someone who works with MySQL as DBA or Developer.
In this book, it has a good paragraph arrangement. It helps readers easy for reading. It has a lot of examples. It's easy-understand. I think readers can read and practice in the same time. Anyway, I still believe this book be able to figure readers out for MySQL Troubleshooting idea.
Just some point, I think On the Chapter 4. It can add more examples. For example, OS command to help for troubleshooting.
By the way, this book is a good stuff for someone who need to troubleshoot MySQL.
Bottom Line Yes, I would recommend this to a friend