Details
-
Bug
-
Status: Closed (View Workflow)
-
Major
-
Resolution: Duplicate
-
5.5.45, 10.0.21
-
Debian Wheezy 64bit
Description
Our RAID controller goes crazy while replacing the faulty drive, which results into corrupted ibdata1 file. MariaDB server was unable to start and was crashing all the time. For version 5.5, i was only able to start it with 'innodb=OFF', for 10.0 (i desided to upgrade to see, if newer version can do better in this situation so i can get the data) also this helps 'innodb_force_recovery=4' (must be 4 or above). Unfortunately, either way won't help me much. I was trying this:
http://dev.mysql.com/doc/refman/5.6/en/forcing-innodb-recovery.html
http://dev.mysql.com/doc/refman/5.6/en/tablespace-copying.html
and several other methods i googled to get it working but with no luck. On the end of the day, i ended up restoring data from backup and loosing the data from past 1 day (data from almost 500 databases owned by lots of pissed customers).
In the logs (attaching) you can see one database, which i thought was the one corrupted and causing problems. I was trying really hard to remove it from tablespace and let MariaDB server to start and give me access to all other databases but i failed. I think it would be great to allow MariaDB to just discard some (corrupted) data and allow access to remaining data. I believe that only few databases were corrupted but i had to restore all InnoDB tables from backup and loosing lots of data.
Btw, I'm using 'innodb_file_per_table = 1'.