sql >> Database teknologi >  >> RDS >> Mysql

gendan mysql-database fra ibdata1

Følgende fungerede for min:

  • Indstil innodb_force_recovery =1 i din my.cnf

  • Prøv at få din mysqld til at genstarte. Hvis ikke, gentag trin #1 og incrementinnodb_force_recovery hver for sig, indtil det lykkes. Brug guiden til at hjælpe dig med at forstå, hvad der sker, hver gang du øger det:http://dev.mysql.com/doc/refman/5.0/en/forcing-innodb-recovery.html

  • Når mysqld kører, så prøv at dumpe alle dine databaser

  • Hvis det ikke lykkes, skal du prøve det først på databaseniveau
  • Hvis det ikke lykkes, skal du prøve det på tabelniveau
  • Når en af ​​dem er vellykket, og enten alle dine db'er eller alle dine tabeller er eksporteret, skal du stoppe mysqld

  • Flyt din ib_logfile*> ib_logfile*.bak. Disse er typisk i din mysql-datamappe.

  • Hvis du i det første trin øgede din innodb_force_recovery => 4, skal du indstille den til under 4. Fra 5.6.15 placerer en innodb_force_recovery-indstilling på 4 eller flere InnoDB i skrivebeskyttet tilstand.

  • Start mysqld-serveren

  • Importer dine eksporterede databaser eller tabeller

  • Øget din innodb_force_recovery => 1

  • Genstart mysqld-serveren



  1. Hvad betyder SQL #-symbolet, og hvordan bruges det?

  2. Sådan fungerer COMPRESS() i MariaDB

  3. PostgreSQL-indeks på JSON

  4. Arbejde med Salesforce.com-data i SQL Server Reporting Services