Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL 5.6.10 InnoDB kann keine Tabelle erstellen, da die Tabelle bereits vorhanden ist

Informationen zu einer Tabelle werden an zwei Stellen gespeichert:

  1. Serverweite table.frm-Datei
  2. Storage-Engine-spezifisches InnoDB-Wörterbuch

Diese beiden müssen synchron sein, aber es gibt keinen zuverlässigen Mechanismus, um diese Konsistenz zu erzwingen. Aus verschiedenen Gründen wird das InnoDB-Wörterbuch nicht mehr synchron.

In Ihrem Fall gibt es einen verwaisten Datensatz im Wörterbuch. Sie müssen es löschen.

InnoDB bietet keine Möglichkeit, die Wörterbucheinträge manuell zu ändern. Aber Sie können eine gefälschte table.frm-Datei (wenn innodb_file_per_table=ON dann auch table.ibd) erstellen, sie in das Datenbankverzeichnis legen und die Tabelle löschen.

Alte Versionen von InnoDB beschweren sich möglicherweise über nicht übereinstimmende SPACENO. Überprüfen Sie dann wie es geht Korrigieren Sie das InnoDB-Wörterbuch