Informatie over een tafel wordt op twee plaatsen opgeslagen:
- Server-breed table.frm-bestand
- Storage-engine specifiek InnoDB-woordenboek
Deze twee moeten synchroon lopen, maar er is geen betrouwbaar mechanisme om deze consistentie af te dwingen. Om een aantal redenen loopt het InnoDB-woordenboek niet synchroon.
In jouw geval staat er een verweesd record in het woordenboek. Je moet het verwijderen.
InnoDB biedt geen enkele manier om de woordenboekrecords handmatig te wijzigen. Maar je kunt nep-table.frm-bestanden maken (als innodb_file_per_table=ON en dan ook table.ibd), deze in de databasedirectory plaatsen en de tabel neerzetten.
Oude versies van InnoDB kunnen klagen over niet-overeenkomende SPACENO. Controleer vervolgens hoe InnoDB-woordenboek repareren