У меня есть ARCHIVE
таблицу, которую я просто не могу восстановить, я уже пытаюсь удалить разбиение, но все равно получаю эту ошибку:
alter table promo_tool_view_44 REMOVE PARTITIONING;
ERROR 1034 (HY000): Incorrect key file for table 'promo_tool_view_44'; try to repair it
Я уже пытаюсь отремонтировать стол, но получаю ответ: отремонтировать таблицу Promo_tool_view_1;
+-----------------------------+--------+----------+-----------------------------+
| Table | Op | Msg_type | Msg_text |
+-----------------------------+--------+----------+-----------------------------+
| vad_stats.promo_tool_view_1 | repair | error | Partition p1 returned error |
| vad_stats.promo_tool_view_1 | repair | error | Corrupt |
+-----------------------------+--------+----------+-----------------------------+
2 rows in set (0.21 sec)
Как я могу это решить?
Спасибо,
Педро
Если вы еще этого не сделали: выключите БД и создайте резервную копию. Ремонтные операции опасны.
К сожалению, я настоятельно рекомендую использовать резервную ленту. Что-то явно не работает в разделе p1. Но есть некоторые уловки, которые могут вернуть ваши данные.
myisamchk реализует множество вещей, которых нет в cli. Пытаться
myisamchk --safe-recover
myisamchk --recover
в таком порядке и посмотрите, повезет ли вам еще. Есть много флагов, которые могут вам помочь. Полную документацию можно найти на
http://dev.mysql.com/doc/refman/5.5/en/myisamchk.html
Полную документацию по ремонту в кли можно найти на http://dev.mysql.com/doc/refman/5.5/en/repair-table.html
После того, как вы закончите восстановление, вы должны сначала выяснить, почему у вас была повреждена БД. Это не нормально для баз данных MySQL.
Для таблиц ARCHIVE единственный способ, который я нашел, - это перезапись файлов таблиц с одного из подчиненных серверов. Но, пожалуйста, ребята, если кто-нибудь, как одно из решений для этого, пожалуйста, помогите нам, чтобы предотвратить будущие бедствия