П О Р Т А Л                            
С Е Т Е В Ы Х                          
П Р О Е К Т О В                        
  
Поиск по сайту:
                                                 
Главная

О проекте

Web-мастеру
     HTML & JavaScript
     SSI
     Perl
     PHP
     XML & XSLT
     Unix Shell

MySQL

Безопасность

Хостинг

Другое








Самое читаемое:

Учебник PHP - "Для Чайника".
Просмотров 174995 раз(а).

Иллюстрированный самоучитель по созданию сайтов.
Просмотров 71936 раз(а).

Учебник HTML.
Просмотров 72056 раз(а).

Руководство по PHP5.
Просмотров 42662 раз(а).

Хостинг через призму DNS.
Просмотров 49150 раз(а).

Подборка текстов стандартных документов.
Просмотров 43091 раз(а).

Учебник PHP - Самоучитель
Просмотров 49428 раз(а).

Документация на MySQL (учебник & справочное руководство)
Просмотров 49668 раз(а).

Внешние атаки...
Просмотров 40226 раз(а).

Учебник PHP.
Просмотров 35246 раз(а).

SSI в примерах.
Просмотров 26539 раз(а).



 
 
| Добавить в избранное | Сделать стартовой | Помощь




Глава 4. Администрирование баз данных
Пред. След.

4.4. Предотвращение катастроф и восстановление
4.4.7. Настройка режима профилактики таблиц

Начиная с версии MySQL 3.23.13 можно проверять таблицы типа MyISAM с помощью команды CHECK TABLE (see Раздел 4.4.4, «Синтаксис CHECK TABLE »). Для ремонта таблиц можно использовать команду REPAIR TABLE (see Раздел 4.4.5, «Синтаксис REPAIR TABLE »).

Целесообразно выполнять регулярные проверки таблиц, не дожидаясь появления проблем. В целях профилактики для проверки таблиц можно использовать myisamchk -s. Опция -s (сокращение для --silent) задает выполнение myisamchk в молчаливом режиме с выдачей сообщений только при возникновении ошибок.

Не стоит сбрасывать со счетов и выполнение проверки таблиц при запуске сервера. Например, всякий раз, когда во время обновления происходит перезагрузка, необходима проверка всех таблиц, которые могли при этом пострадать (назовем их "потенциально поврежденными таблицами"). В safe_mysqld можно добавить тест, запускающий myisamchk для проверки всех таблиц, измененных за последние 24 часа, в случае, если после перезагрузки остался старый файл .pid (ID процесса) (mysqld создает .pid-файл во время запуска и удаляет его при нормальном завершении; наличие .pid-файла во время запуска системы свидетельствует о том, что mysqld не завершился нормально).

Можно сделать даже более надежный тест - выполнить проверку таблиц с более поздней, чем у .pid-файла, датой последней модификации.

Таблицы также следует регулярно проверять в ходе нормального функционирования системы. У себя в MySQL AB мы запускаем задачи по cron для проверки всех наших важных таблиц раз в неделю, используя следующую строку в файле crontab:

35 0 * * 0 /path/to/myisamchk --fast --silent /path/to/datadir/*/*.MYI

Такая команда отображает информацию о поврежденных таблицах, и мы при надобности можем их исследовать и исправить.

Поскольку за последние пару лет у нас (на самом деле) не было неожиданно поврежденных таблиц (таблиц, получивших повреждение по причинам, отличным от неисправностей оборудования), то для нас проверки один раз в неделю более чем достаточно.

Мы рекомендуем для начала выполнять myisamchk -s еженощно на всех таблицах, обновленных на протяжении последних 24 часов, пока вы не станете доверять MySQL настолько, насколько доверяем мы.

Обычно в таком контроле над таблицами MySQL необходимости нет. При изменении таблиц с динамическим размером строк (таблиц со столбцами типов VARCHAR, BLOB или TEXT) или при наличии таблиц с большим числом удаленных строк может потребоваться время от времени (где-то раз в месяц) дефрагментировать таблицы.

Это можно сделать, используя OPTIMIZE TABLE на аналогичных таблицах, или, если есть возможность приостановить mysqld, выполняя:

isamchk -r --silent --sort-index -O sort_buffer_size=16M */*.ISM
myisamchk -r --silent --sort-index -O sort_buffer_size=16M */*.MYI

Назад Начало Главы Начало Раздела Вперед

Пред. Глава След. Глава
Глава 3. Учебное пособие по MySQL Начало Книги Глава 5. Оптимизация в MySQL


Если Вы не нашли что искали, то рекомендую воспользоваться поиском по сайту:
 





Copyright © 2005-2016 Project.Net.Ru