Если сайт перестал работать из-за сбоя соединения с базой данных, то стоит включить вывод ошибок и посмотреть на на сообщение от MySQL. если там окажется слово "corrupted", то вполне возможно, что всё не так уж и плохо. Ведь повреждённую таблицу в базе данных можно восстановить.
Для начала необходимо проверить статус таблицы. Для попробуйте выполнить SQL команду
CHECK TABLE имя_таблицы;
Если таблица в порядке, то результат выполнения будет такой:
+-------------+-------+----------+----------+ | Table | Op | Msg_type | Msg_text | +-------------+-------+----------+----------+ | имя_таблицы | check | status | OK | +-------------+-------+----------+----------+
Если статус таблицы не "OK" а "corrupted" или какой-нибудь другой, который указывает на проблему, то необходимо восстановить таблицу. Делается это командой:
REPAIR TABLE имя_таблицы;
Этого хватает для починки 99% проблемных таблиц. Зачастую это таблицы типа MyISAM, которые не так надёжны, как InnoDB. Поэтому рекомендую перевести повредившиеся таблицы в тип InnoDB. Делается это с помощью SQL команды:
ALTER TABLE имя_таблицы ENGINE = INNODB;
К сожалению, InnoDB проигрывают по скорости в некоторых операциях MyISAM. Особенно если в таблице не много данных (не десятки гигабайт, а пара мегабайт). Но таблицы типа InnoDB надёжнее.