sql >> Databasteknik >  >> RDS >> Mysql

återställa mysql-databas från ibdata1

Följande fungerade för min:

  • Sätt innodb_force_recovery =1 i din my.cnf

  • Försök få din mysqld att starta om. Om inte, upprepa steg #1 och incrementinnodb_force_recovery var och en tills den lyckas. Använd guiden för att hjälpa dig förstå vad som händer varje gång du ökar det:http://dev.mysql.com/doc/refman/5.0/en/forcing-innodb-recovery.html

  • När mysqld körs, försök att dumpa alla dina databaser

  • Om det inte lyckas måste du prova det först på databasnivå
  • Om det inte lyckas måste du prova det på tabellnivå
  • När en av dessa är framgångsrik och antingen alla dina db:er eller alla dina tabeller har exporterats, stoppa mysqld

  • Flytta din ib_logfile*> ib_logfile*.bak. Dessa finns vanligtvis i din mysql-datakatalog.

  • Om du i det första steget ökade din innodb_force_recovery => 4, måste du ställa in den under 4. Från och med 5.6.15 placerar en innodb_force_recovery-inställning på 4 eller fler InnoDB i skrivskyddat läge.

  • Starta mysqld-servern

  • Importera dina exporterade databaser eller tabeller

  • Ökade din innodb_force_recovery => 1

  • Starta om mysqld-servern



  1. Importera .sql-fil på Windows till postgresql

  2. DatabaseError:"inte alla argument konverterade under strängformatering" när jag använder pandas.io.sql.to_sql()

  3. TypeError:Objekt av typen 'DataFrame' kan inte serialiseras med JSON

  4. hur man infogar datetime i mysql med php