How to fix InnoDB database corruption error?

Check the log files. If you find InnoDB database corruption, follow the below mentioned steps:

Take a backup or mysql directory, which can be used to restore if anything goes wrong.

# cd /var/lib/

# tar -cxvf mysql.tar.gz mysql

//Stop mysql service
# /etc/init.d/mysql stop

Add the following line into /etc/my.cnf to make mysql read only
innodb_force_recovery = 4

Restart mysqld - Mysql will start as we have started in read only mode

//Take backup of all databases using mysqldump
# mysqldump -A > alltable.sql

Drop all databases which are corrupted

Database can be deleted by deleting related directory in /var/lib/mysql/ or from mysql command-line or from phpmyadmin

#mysql -u root -p

# DROP ;

//We can check available database using this command
# show databases;

//Stop mysql service
# service mysql stop

//Remove innodb log and data file
# rm -rf /var/lib/mysql/ib*

Remove or comment out innodb_force_recovery in /etc/my.cnf

//Start mysql sevice in read-write mode
# service mysql start

//Restore database from backup that we have taken
# mysql -u root -p dbname < alldb.sql


After restoring DB restart mysql. We have fixed the issue, if MySQL is able to restart successfully. If still issue persists, you will need to restore database from older backup.


Related Articles

How to convert time zone in MySQL?

You can change the timezone in MySQL using php function CONVERT_TZ. Following is the SQL command...

How to Administrate MySQL Server with mysqladmin commands?

By using mysqladmin commands, you can perform basic MySQL tasks very easily, such as...

MySQL Connection Errors and Troubleshooting

This article will assist you to fix the common causes of MySQL connection errors along with steps...

How to back up MySQL databases using AutoMySQLBackup?

What is AutoMySQLBackup? AutoMySQLBackup is a script that allows you to schedule the automatic...

How to Fix MySQL Error "The server quit without updating PID file"?

MySQL server plays a vital role for your Linux Server. It runs all of your website's databases,...

  • 0 Users Found This Useful

Was this answer helpful?