Следното работи за мен:
-
Задайте innodb_force_recovery =1 във вашия my.cnf
-
Опитайте да рестартирате mysqld. Ако не, повторете стъпка #1 и увеличете incrementinnodb_force_recovery с всяка, докато успеете. Използвайте ръководството, за да ви помогне да разберете какво се случва всеки път, когато го увеличавате:http://dev.mysql.com/doc/refman/5.0/en/forcing-innodb-recovery.html
-
След като mysqld стартира, опитайте да изхвърлите всичките си бази данни
- Ако това не е успешно, ще трябва да опитате първо на ниво база данни
- Ако това не е успешно, ще трябва да опитате на ниво маса
-
След като едно от тях е успешно и или всичките ви db, или всичките ви таблици са експортирани, спрете mysqld
-
Преместете вашия ib_logfile*> ib_logfile*.bak. Те обикновено са във вашата директория с данни на mysql.
-
Ако в първата стъпка сте увеличили вашето innodb_force_recovery => 4, трябва да го зададете под 4. От 5.6.15, настройка на innodb_force_recovery от 4 или по-голяма поставя InnoDB в режим само за четене.
-
Стартирайте сървъра mysqld
-
Импортирайте вашите експортирани бази данни или таблици
-
Увеличихте вашето innodb_force_recovery => 1
-
Рестартирайте сървъра mysqld