The following general guidelines apply to troubleshooting
When an operation fails or you suspect a bug, look at the MySQL server error log (see Section 5.2.2, “The Error Log”).
Issues relating to the
InnoDB data dictionary
statements (orphaned table files), inability to open
.InnoDB files, and system cannot
find the path specified errors. For information
about these sorts of problems and errors, see
Section 14.19.3, “Troubleshooting InnoDB Data Dictionary Operations”.
When troubleshooting, it is usually best to run the MySQL server
from the command prompt, rather than through
mysqld_safe or as a Windows service. You can
then see what mysqld prints to the console,
and so have a better grasp of what is going on. On Windows,
start mysqld with the
--console option to direct the
output to the console window.
InnoDB Monitors to obtain
information about a problem (see
Section 14.15, “InnoDB Monitors”). If the problem is
performance-related, or your server appears to be hung, you
should enable the standard Monitor to print information about
the internal state of
InnoDB. If the problem
is with locks, enable the Lock Monitor. If the problem is in
creation of tables or other data dictionary operations, enable
the Table Monitor to print the contents of the
InnoDB internal data dictionary. To see
tablespace information enable the Tablespace Monitor.
InnoDB temporarily enables standard
InnoDB Monitor output under the following
A long semaphore wait
InnoDB cannot find free blocks in the
Over 67% of the buffer pool is occupied by lock heaps or the adaptive hash index
If you suspect that a table is corrupt, run
CHECK TABLE on that table.