Le informazioni su una tabella sono memorizzate in due posizioni:
- File table.frm a livello di server
- Dizionario InnoDB specifico per il motore di archiviazione
Questi due devono essere sincronizzati, ma non esiste un meccanismo affidabile per rafforzare questa coerenza. A causa di una serie di motivi, il dizionario InnoDB non è sincronizzato.
Nel tuo caso c'è un record orfano nel dizionario. Devi eliminarlo.
InnoDB non fornisce alcun modo per modificare manualmente i record del dizionario. Ma puoi creare un falso file table.frm (se innodb_file_per_table=ON quindi anche table.ibd), inserirlo nella directory del database e rilasciare la tabella.
Le vecchie versioni di InnoDB potrebbero lamentarsi della mancata corrispondenza di SPACENO. Quindi controlla come correggere il dizionario InnoDB