Mysql
 sql >> база данни >  >> RDS >> Mysql

възстановяване на mysql база данни от ibdata1

Следното работи за мен:

  • Задайте 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



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Неуспешно задание за експортиране на Sqoop към MySQL. Инструмент за експортиране, но има записи

  2. Направете автоматично увеличение за запълване на изтрития номер

  3. Къде mysql съхранява данни?

  4. $filter не работи в JPA/Olingo 2.0.11 с MySQL

  5. MySql Processlist, пълен със записи за сън, водещи до твърде много връзки?