Таблицы базы данных существуют, но MYSQL говорит, что их нет

Когда я захожу в MySQL и показываю ТАБЛИЦЫ, я вижу список таблиц. Но когда я запускаю запрос к любому из них, я получаю сообщение:

ОШИБКА 1146 (42S02): Таблица "имя_библиотеки.таблицы" не существует

Если я запускаю команду CHECK TABLE для любого из них, я получаю:

+------------------+-------+----------+---------------------------------------------------------------------+
| Table            | Op    | Msg_type | Msg_text                                                            |
+------------------+-------+----------+---------------------------------------------------------------------+
| dbname.tablename | check | Warning  | InnoDB: Tablespace is missing for table 'dbname/tablename' |
| dbname.tablename | check | Error    | Table 'dbname.tablename' doesn't exist                     |
| dbname.tablename | check | status   | Operation failed                                                    |
+------------------+-------+----------+---------------------------------------------------------------------+

В моем каталоге /usr/local/mysql/data я вижу, что каталог моей базы данных содержит как .ibd файлы для каждой из моих таблиц. По своим размерам похоже, что они содержат много данных.

Пожалуйста, прости меня за вопрос, который был задан ранее. Я осмотрелся и увидел похожие проблемы, связанные с перемещением или удалением файлов. Я не сделал ни того, ни другого. Единственное, о чем я могу думать, это перезапуск выключения питания без какого-либо отключения.

Я использую сервер сообщества MYSQL 5.6.17 на Mac OS X 10.8.5.

По совпадению, я заметил одну странную вещь: мой терминал OS X отображает unknowne4ce8f1e830c в качестве имени моего хоста, где когда-то отображалось имя моего компьютера. Интересно, где-то где-то путается. Но это всего лишь предположение, и я нечасто пользуюсь терминалом. Таким образом, они могут легко быть отдельными вопросами.

Спасибо за помощь.

1 ответ

Я исправил проблему. Я не совсем уверен в причине. Но это определенно прошло.

В качестве имени хоста использовалась красная сельдь. Это изменилось, как только я перешел в другую сеть. Оказалось, что мои попытки остановить и запустить mysql не сработали. Я понял, что после получения:

2014-06-18 12:17:39 39973 [Примечание] mysqld: завершение работы завершено

и проверка PS Aux | grep mysql

это не закрывалось. Как только я успешно перезапустил, проблема ушла. Я не уверен, что вызвало это изначально. Но это не проблема сейчас.

Извините за отвлечение.

Другие вопросы по тегам