sql >> Databasteknik >  >> RDS >> Mysql

MySQL 5.6.10 InnoDB kan inte skapa tabell eftersom tabell redan finns

Information om en tabell lagras på två ställen:

  1. Serveromfattande table.frm-fil
  2. Lagringsmotorspecifik InnoDB-ordbok

Dessa två måste vara synkroniserade, men det finns ingen pålitlig mekanism för att upprätthålla denna konsekvens. På grund av flera orsaker hamnar InnoDB-ordboken ur synk.

I ditt fall finns det en föräldralös post i ordboken. Du måste ta bort den.

InnoDB tillhandahåller inget sätt att manuellt ändra ordboksposterna. Men du kan skapa en falsk table.frm (om innodb_file_per_table=ON så table.ibd också)-filer, lägg den i databaskatalogen och släpp tabellen.

Gamla versioner av InnoDB kan klaga på att SPACENO inte matchar. Kontrollera sedan hur du fixa InnoDB-ordbok




  1. Kopiera en tabell med data från en MySQL-server till en annan

  2. Hur löser jag mysql port 3306-felet på wamp?

  3. Får senaste infognings-id för mysql efter infogning

  4. PDO::ERRMODE_EXCEPTION undertrycker inte varning