Wednesday, February 23, 2011

Incorrect Information in .FRM File of InnoDB Table

MySQL organizes all the data as tables, irrespective of storage engine used. If you are using MySQL with InnoDB tables, these tables might get corrupt due to hardware faults, unexpected power failure, MySQL code errors, kernel bugs and other similar reasons. In such cases, InnoDB will typically give some errors indicating table corruption. As a data restoration source, you will need to use your latest database backup. But in case if backup fails to restore required information or doesn’t exist, you should scan your damaged database using third-party MySQL Repair or MySQL Recovery tools.

You might encounter the similar error message while accessing an InnoDB table:

“#1033 - Incorrect information in file: '"table name" .frm”

MySQL crashes after you receive this error message.

Cause: You receive this error message if InnoDB table is corrupted or damaged. An InnoDB table is stored as three files: .FRM (database table definition), .MYI (Index file) and .MYD (table data). This particular error occurs if .FRM table is damaged or corrupted.

Solution:
To solve such problems, you should follow these steps:
    Check the table for corruption errors. To do so, you need to use CHECK TABLE command with options like QUICK, EXTENDED, CHANGED etc. that can be used on the basis of check required. The basic syntax is: "CHECK TABLE tablename [options]" If table corruption is the issue, repair it using REPAIR TABLE command. Before using the command, you should make sure that your disk contains about twice as much disk space as of damaged table. REPAIR TABLE command can be used with options like QUICK and EXTENDED with the following syntax: "REPAIR TABLE tablename [options]" If above measures cannot repair the damaged table, check your backup status. If valid backup is available, delete the damaged table and restore from backup. If no valid backup is present, you can make use of MySQL Recovery software. These are advanced tools to analyze and repair damaged MySQL tables. Using powerful scanning, these tools are also capable of maintaining database integrity. Moreover, these MySQL Repair applications come available with rich user interface.

Stellar Phoenix Database Recovery For MySQL is an optimum tool to repair and restore damaged MySQL tables. It supports recovery for both InnoDB (.ibdata, .ibd and .frm) and MyISAM (.myd, .myi and .frm) database storage engines. The software supports MySQL 5.x. This non-destructive MySQL Recovery tool can restore all database objects, like tables, primary key(s), relations and others. It can recover databases of Windows and Linux platforms and is compatible with Windows Vista, XP, 2003, and 2000.

Article is taken from: http://hubpages.com/hub/Incorrect-Information-in-FRM-File-of-InnoDB-Table

Wednesday, February 16, 2011

MySQL recovery utility for any instance of corruption

In order to start your MySQL server, you used to type the whole path like: "C:\mysql\bin\mysql123" in your DOS prompt. However, sometimes, the MySQL server fails to start with this usual command and the reason may be any possible case of database corruption or damage. In such a case, you cannot be able to access your database and need any MySQL repair utility to repair the troubled MySQL database and recover the data thereof.
In case of any corruption, you may encounter an error message at the start of the MySQL server, which may be as below:

"Default storage engine is not available"

Moreover, in order to resolve the error, if you reinstall the MySQL server without removing the data directory, the server starts normally. However, to your utter dismay, while accessing the any database table, you may encounter another error message on the screen as below:

"ERROR 1146 (42S02): Table 'Tablename' doesn't exist"

Note: Here, the 'Tablename' is the name of the table, you have tried to access.

The above error message appears each time you try to access the table. Even, you cannot be able to resolve the error with the 'mysqlcheck' utility.

In general, the reason behind the occurrence of the error messages is the corruption of the MySQL database, which can have been caused due to an improper system shut down, virus/malware intrusion or any other application malfunction etc.

Resolution:

In order to resolve the problem, you need to repair MySQL with the following command:

Repair Table Tablename
However, with severe corruption, the above command does not able to repair the database and you need to look for any valid backup to restore your seemingly lost MySQL database. If you fail to restore the database from the backup, then, you need to run any MySQL recovery software to recover back the database efficiently.

These read-only utilities are designed with advanced algorithms to repair MySQL database and recover the data safely. Moreover, with highly interactive graphical user interface, you may never find any problem in operating the software.

Stellar Phoenix Database Recovery For MySQL is an extremely powerful utility to repair the corrupt database and recover MySQL database with all its internal structure being intact. The software works well with almost all Windows versions, including Windows Vista, XP, 2003, 2000 and is absolutely easy to use on the parts of experts to normal users.

Sunday, February 6, 2011

Advanced Utility to Repair and Restore Corrupt MySQL Table

MySQL database has many commands to systematically maintain its data. All of these commands have different syntax. Out of the several commands, MySQL database has two most common commands that are Optimize and Flush. The Optimize command of MySQL database is used for the defragmenting the database files and use the free space. The Flush command of MySQL database reloads and clears all the internal patches used by database. You can use Flush statement with RELOAD privilege. The above mentioned two commands have different functionalities and features. Using MySQL commands one after the another, your MySQL database table can get corrupted. In such scenarios, your data saved in the table will be inaccessible. For accessibility of table data, you should use an advanced MySQL repair software to fix the problem.

Consider a practical scenario wherein, you run the Optimize command and consequently run the Flush command, after doing this you may got an error message and the data stored in the mysql table become inaccessible.

Root Cause of Problem:

The main cause of the MySQL table corruption is you have used Optimize and Flush command concurrently.

Way to Resolve:

The safe and effective way to repair MySQL table is to run the given below command.

Check corruption limit of mysql table using given statement:
mysqlcheck [options] dbname tablename [tablename2... ]
Repair damaged table using given below statement:
repair table tablename [,tablename1...][options]

The above mentioned steps enable you to repair the mysql database table and fix the problem. But if, these steps fail to fix the corruption issue, that means table is not repair by the command. In such scenarios, you can used the backup of your database for restoring the table. If in case, backup is not updated then only way to repair your corrupt table is by using a third party MySQL Recovery Repair software.

These third party MySQL recovery software used advanced algorithm to repair the corrupted MySQL table. With highly graphical user-documentation, the software is self explanatory and does not require any technical understanding.