Задать вопрос

Как вылечить innoDB таблицу?

Здравствуйте, после зависания сервера случилась такая ситуация:
Поломалась одна из таблиц — "d7_views_content_cache", данные из этой таблицы мне не нужны, но она зависла в странном состоянии:
к ней нет доступа, ее нельзя удалить, нельзя создать

MariaDB []> drop table d7_views_content_cache ;
ERROR 1051 (42S02): Unknown table 'd7_views_content_cache'


MariaDB []> CREATE TABLE `d7_views_content_cache` ( `timestamp` INT(64) NOT NULL DEFAULT '0' ) ENGINE = InnoDB;
ERROR 1005 (HY000): Can't create table 'd7_views_content_cache' (errno: -1)

MariaDB []> select * from d7_views_content_cache;
ERROR 1146 (42S02): Table 'd7_views_content_cache' doesn't exist


Пробовал удалять файл d7_views_content_cache.ibd, он он сразу создается заново.
Восстанавливать из бекапа очень не хочется(много контента, это займет много времени)

Подскажите, может есть способ ее как-нибудь дропнуть или починить?
  • Вопрос задан
  • 897 просмотров
Подписаться 6 Оценить 9 комментариев
Пригласить эксперта
Ответы на вопрос 3
hetmansoftware
@hetmansoftware
Руководитель Hetman Software
Возможно получится грохнуть отдельный файл этой таблицы? Расположение файлов можно глянуть здесь - https://hetmanrecovery.com/ru/recovery_news/restor...
Ответ написан
Комментировать
unwrecker
@unwrecker
file_per_table не включён? На будущее неплохо бы включить - помогает в таких случаях удаление файла даных таблицы.
Ответ написан
Комментировать
@Swartalf
Попробуйте создать в другой базе эту таблицу, потом делаете discard.
переносите физически файлы новосозданой таблицы в рабочую базу, делаете импорт. Как вариант можно сделать drop/create таблицу.

Подробней посмотрире тут(Discarding and Importing InnoDB Tablespaces) и тут тут
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы