Wygląda na to, że masz nazwę tabeli.ibd, ale nie masz nazwy tabeli.frm.
Aby sprawdzić:
- cd do katalogu danych mysql, a następnie nazwę bazy danych.
cd /var/lib/mysql/database_name
-
Wyszukaj nazwę tabeli, która zawiera błąd.
ls tablename.*
Powinieneś zobaczyć dwa pliki:
tablename.ibd tablename.frm
Ale domyślam się, że nie widzisz i widzisz tylko
tablename.ibd
Aby naprawić, masz kilka opcji:
- Dodaj następujące polecenie do mysqldump, co spowoduje usunięcie bazy danych, wyczyszczenie katalogu danych przed przywróceniem.
--add-drop-database
- Skopiuj tablename.frm z prod do dev, a następnie wydaj instrukcję usuwania tabeli.
Również:
- Nie ma potrzeby używania net_buffer_length=5000 podczas zrzutu do pliku na hoście lokalnym.
- Inne rozwiązania do tworzenia kopii zapasowych — Percona Xtrabackup