sql >> Databáze >  >> RDS >> Mysql

MySQL 5.6.10 InnoDB nemůže vytvořit tabulku, protože tabulka již existuje

Informace o tabulce jsou uloženy na dvou místech:

  1. Soubor table.frm pro celý server
  2. Slovník InnoDB specifický pro úložiště

Tyto dva musí být synchronizovány, ale neexistuje žádný spolehlivý mechanismus, který by tuto konzistenci vynutil. Z mnoha důvodů se slovník InnoDB nesynchronizuje.

Ve vašem případě je ve slovníku osiřelý záznam. Musíte jej smazat.

InnoDB neposkytuje žádný způsob, jak ručně upravit záznamy slovníku. Můžete však vytvořit falešné soubory table.frm (pokud je innodb_file_per_table=ON, pak také table.ibd) soubory, vložit je do adresáře databáze a tabulku zahodit.

Staré verze InnoDB si mohou stěžovat na neodpovídající SPACENO. Poté zkontrolujte jak na to opravit slovník InnoDB




  1. Microsoft Access DevCon ve Vídni Rakousko 1. – 2. dubna 2017

  2. Jak nainstalovat wordpress na MS SQL

  3. Který dotaz MySQL je rychlejší?

  4. SQL dotaz pro získání všech hodnot, které výčet může mít