The following general guidelines apply to troubleshooting
When an operation fails or you suspect a bug, you should look at the MySQL server error log (see Section 5.3.1, “The Error Log”).
Issues relating to the
dictionary include failed
TABLE statements (orphaned table files), inability
.InnoDB files, and
system cannot find the path specified
errors. For information about these sorts of problems and
Section 18.104.22.168, “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 22.214.171.124, “SHOW ENGINE INNODB STATUS and the InnoDB Monitors”). If the problem is
performance-related, or your server appears to be hung, you
should use the standard Monitor to print information about
the internal state of
InnoDB. If the
problem is with locks, use the Lock Monitor. If the problem
is in creation of tables or other data dictionary
operations, use the Table Monitor to print the contents of
InnoDB internal data dictionary. To
see tablespace information use the Tablespace Monitor.
If you suspect that a table is corrupt, run
CHECK TABLE on that table.