поиск:
Полезные ссылки

  • Форум по MySQL

  • Статьи по MySQL

  • Вопросы по MySQL

  • MySQL.com


  • Базы данных

  • MySQL

  • PostgreSQL


  • PHP конференция 2005
    Подробности!

    7.1.3.1. Повреждения таблиц MyISAM

    Несмотря на то, что формат таблиц MyISAM очень надежен (все изменения в таблице записываются до возвращения значения оператора SQL), таблица, тем не менее, может быть повреждена. Такое происходит в следующих случаях:

    • Процесс mysqld уничтожен во время осуществления записи;

    • Неожиданное отключение компьютера (например, если выключилось электропитание);

    • Ошибка аппаратного обеспечения;

    • Использование внешней программы (например myisamchk) на открытой таблице.

    • Ошибка программного обеспечения в коде MySQL или MyISAM.

    Типичные признаки поврежденной таблицы следующие:

    • Во время выбора данных из таблицы выдается ошибка Incorrect key file for table: '...'. Try to repair it.

    • Запросы не находят в таблице строки или выдают неполные данные.

    Проверить состояние таблицы можно при помощи команды CHECK TABLE. См. раздел See Раздел 4.4.4, «Синтаксис CHECK TABLE ».

    Для восстановления поврежденного файла можно применить команду REPAIR TABLE. See Раздел 4.4.5, «Синтаксис REPAIR TABLE ». Таблицу можно восстановить и в случае, когда не запущен mysqld, при помощи команды myisamchk. See Раздел 4.4.6.1, «Синтаксис запуска myisamchk».

    Если таблицы повреждены значительно, необходимо выяснить причину произошедшего! See Раздел A.4.1, «Что делать, если работа MySQL сопровождается постоянными сбоями».

    Сначала следует определить, послужил ли причиной повреждения таблицы сбой mysqld (это можно легко проверить, просмотрев последние строки restarted mysqld в файле ошибок mysqld). Если дело не в этом, то необходимо составить подробное описание произошедшего. See Раздел D.1.6, «Создание контрольного примера при повреждении таблиц».

     
    © 1997-2005 PHP Club Team
    Rambler's Top100