Po prostu mi się to przydarzyło i po chwili znalazłem odpowiedź w artykule na blogu i chciałem ją również tutaj umieścić.
Jeśli skopiujesz katalog danych MySQL z /var/lib/mysql do /path/to/new/dir , ale skopiuj tylko foldery bazy danych (np. mysql , wpdb , ecommerce , itp.) ORAZ masz tabele innodb, Twoje tabele innodb pojawią się w 'pokaż tabele', ale zapytania o nie (select i describe ) zakończy się niepowodzeniem, z błędem Mysql error: table db.tableName doesn't exist . Zobaczysz .frm w katalogu db i zastanawiam się dlaczego.
W przypadku tabel innodb ważne jest, aby skopiować ib* pliki, którymi w moim przypadku były ibdata1 , ib_logfile0 i ib_logfile1 . Gdy wykonałem transfer, upewniając się, że je skopiowałem, wszystko działało zgodnie z oczekiwaniami.
Jeśli twój plik my.cnf zawiera „innodb_file_per_table”, plik .ibd będzie obecny w katalogu db, ale nadal potrzebujesz plików ib*.