На прошлой неделе наш сервер упал, и мы потеряли много информации. Мы смогли восстановить .frm
файлы для таблиц, ib_logfile0
, ib_logfile1
и ibdata1
но нет .ibd
.
Я пробовал innodb-force-recovery
на всех уровнях с 1 по 6 и множество других «решений», которые я нашел в Интернете, но безуспешно.
Прямо сейчас я пытался сделать это, хотя mysqldump
и restore
базы данных, но столкнулись с той же проблемой Мэтью здесь.
этот ответ похоже, это может сработать. Моя проблема, во-первых, мой сервер основан на Windows, во-вторых, мне не хватает знаний и навыков, чтобы применить это в командной строке Windows.
Не случайно есть ли подобное решение для Windows
редактировать
мы не использовали innodb_file_per_table
поэтому все данные должны храниться на ibdata1
Это сообщение на форуме MySQL выглядит как история успеха, хотя и немного устарела. Я помню похожую историю в Linux. Платформа Windows здесь не имеет значения, структура файлов данных MySQL аналогична. На самом деле никакой работы с командной строкой не требуется. Я предполагаю, что ты Ибдата файл никак не поврежден.
AFAIK вам не нужно ib_logfile? файлы вообще, сообщение на форуме подтверждает это. Ключевые операции здесь:
После запуска MySQL вы должны иметь возможность просматривать и выгружать данные из таблиц InnoDB.