DeusModus
@DeusModus

Постоянно рушится таблица?

Привет.


Столкнулся с повторяющейся и весьма досаждающей проблемой.

Есть таблица. В таблицу происходит происходит вставка данных. До «неделя назад» всё работало год как без сбоев.

С «неделя назад» я получаю следующую ошибку: "Unable to save result set" при SELECT запросе и сломанную таблицу:

TABLE IS marked AS crashed;
2 clients are USING OR haven't closed the table properly;
Wrong record length 1024 of 1027 at 8509040
Corrupt



С чем связана подобная беда? Работало ж ведь как часы.
  • Вопрос задан
  • 2901 просмотр
Решения вопроса 1
printf
@printf
Ем детей.
Если раньше работало, а сейчас все время ломается, я бы смотрел в первую очередь на диск: он или посыпался, или (например) закончилось место в разделе. Посмотрите dmesg, там дисковая подсистема много интересного рассказывает.
Ответ написан
Пригласить эксперта
Ответы на вопрос 3
AGvin
@AGvin
Тут вариантов много, по крайней мере, опиши хоть как бэкапишь свою БД. (если простым copy/past то могут возникнуть проблемы)
Также было бы не плохо описать сервер БД (какой софт стоит обычный mysql или percona?) Еще было бы очень не плохо узнать как возросла на нее нагрузка.
Ответ написан
AGvin
@AGvin
Что тут сказать, у меня была схожая ситуация, причиной была сборка mysql. После обновления полегчало.
Но в данном случае, может еще быть проблема и с дисковой системой. Лучше проверь ее на целостность.

Так же, в принципе, если таблицу полностью чистишь командой «DELETE FROM table_name», то более оптимальным способом, будет использование «TRUNCATE TABLE table_name».
Ответ написан
AGvin
@AGvin
Насчет REPAIR, я как бы не в курсе, какая у тебя таблица MyISAM или InnoDB… Просто с InnoDB REPAIR тебе не поможет ( Если InnoDB — то лучше, почитай документацию.

Так же, в случае если к таблице привязаны ТРИГГЕРЫ, то скорей всего проблема может быть не с таблицей на которой валятся ошибки, а с таблицей в которую данный триггер вносит изменения.
Ответ написан
Ваш ответ на вопрос

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

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