Zní to, jako byste měli název_tabulky.ibd, ale žádný název_tabulky.frm.
Pro kontrolu:
- cd do vašeho datového adresáře mysql a poté název databáze.
cd /var/lib/mysql/database_name
-
Vyhledejte název tabulky, který způsobuje chybu.
ls tablename.*
Měli byste vidět dva soubory:
tablename.ibd tablename.frm
Ale hádám, že ne a vidíte pouze
tablename.ibd
Chcete-li to opravit, máte několik možností:
- Přidejte následující do mysqldump, což způsobí zrušení databáze a vyčištění datového adresáře před obnovením.
--add-drop-database
- Zkopírujte soubor tablename.frm z prod do dev a poté zadejte příkaz delete table.
Také:
- Při ukládání do souboru na localhost není třeba používat net_buffer_length=5000.
- Další řešení zálohování – Percona Xtrabackup