Monday, January 17, 2011

Recover Crashed Tables in MySQL Database

MySQL is a popular database management system, a most widely used for web databases, offers efficient techniques to ensure absolute integrity of the database. When you start MySQLD (MySQL Server), it automatically examines all the database tables for integrity. MySQL Server also fixes the tables if they are marked as ´not closed properly´ or ´crashed´. It backs up all the corrupted database tables and makes their entries in the error log. Though, it works in a number of cases, but cannot necessarily fix all the corruption issues and fails to recover MySQL database.

The MySQLD technique cannot repair MySQL database if it is severely damaged. As a practical scenario, where MySQL Server cannot handle the table corruption, you may encounter the below error message-

"Got an error from thread_id=1, mi_dynrec.c:368"

The above error message occurs when you start the MySQL server for accessing the database records that are stored in the MyISAM (MySQL database engine). After initialization, the server examines for integrity of all database tables and attempts to repair the damaged ones. MySQL Server logs this error in error log.

This problem occurs every time you start MySQL Server database, until you repair or remove the damaged tables. All the records that you have saved in MyISAM table become unusable after this error.

Root of the problem:


There are numerous reasons of MySQL database corruption, such as virus infection, unexpected system shutdown, application malfunction, and subsequent editing of the database. MySQL server cannot recognize the database after corruption and thus you face this problem.

Solution:

In order to perform MySQL database recovery in such situations, follow the underwritten steps-

Check the extent of damage to the table using the CHECK TABLE command. Once the corrupt table is identified, use REPAIR TABLE command to repair MySQL database table.

If you have an updated and valid backup of the damaged table, restore it. Backup is the best way to perform MySQL recovery.

In case you do not have a proper backup of your database, you are required to look for alternative MySQL repair solution, which is to use MySQL database recovery software.

MySQL recovery software are particularly designed to repair MySQL database with highly-advanced scanning techniques. They safely repair MySQL database with read-only and non-destructive conduct.

Stellar Phoenix Database Recovery for MySQL is the comprehensive SQL database recovery software that works in all corruption scenarios, with both MyISAM and InnoDB storage engines.