Связь и интернет Архив Программирование
   
Сделать стартовойСделать закладку            
   ПОИСК  
   
Главная / MySQL / Администрирование баз данных /
8  Perl
8  PHP
8  JavaScript
8  HTML
8  DHTML
8  XML
8  CSS
8  C / C++
8  Pascal и Delphi
8  Турбо Ассемблер
8  MySQL
8  CASE-технологии
8  Алгоритмы
8  Python
8  Обратная связь
8  Гостевая книга
Новости о мире


Справочник по языку администрирования баз данных - Программирование от RIN.RU
Справочник по языку администрирования баз данных




Синтаксис команды OPTIMIZE TABLE


OPTIMIZE TABLE tbl_name[,tbl_name]...


Команда OPTIMIZE TABLE должна использоваться после удаления большей части таблицы или если в таблице было внесено много изменений в строки переменной длины (таблицы, в которых есть столбцы VARCHAR, BLOB или TEXT). Удаленные записи поддерживаются при помощи связного списка, и последующие операции INSERT повторно используют позиции старых записей. Чтобы перераспределить неиспользуемое пространство и дефрагментировать файл данных, можно воспользоваться командой OPTIMIZE TABLE.


На данный момент команда OPTIMIZE TABLE работает только с таблицами MyISAM и BDB. Для таблиц BDB команда OPTIMIZE TABLE выполняет ANALYZE TABLE. См.
раздел 2 Синтаксис команды ANALYZE TABLE.


Можно применить OPTIMIZE TABLE к таблицам других типов, запустив mysqld с параметром --skip-new или --safe-mode, но в этом случае OPTIMIZE TABLE лишь только выполняет ALTER TABLE.


Команда OPTIMIZE TABLE работает следующим образом:


  • Если в таблице есть удаленные или разделенные строки, восстанавливает таблицу.

  • Если индексные страницы не отсортированы - сортирует их.

  • Если статистические данные не обновлены (и восстановление нельзя осуществить путем сортировки индексов), обновляет их.


Команда OPTIMIZE TABLE для MyISAM представляет собой эквивалент выполнения myisamchk --quick --check-only-changed --sort-index --analyze над таблицей.


Обратите внимание: во время работы OPTIMIZE TABLE таблица заблокирована!


Синтаксис команды ANALYZE TABLE


ANALYZE TABLE tbl_name[,tbl_name...]


Анализирует и сохраняет распределение ключей для таблицы. Во время проведения анализа таблица заблокирована для чтения. Эта функция работает для таблиц MyISAM и BDB.


Данная команда является эквивалентом выполнения myisamchk -a для таблицы.


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


Эта команда выдает таблицу со следующими столбцами:


Столбец Значение
Table Имя таблицы
Op Всегда "analyze"
Msg_type Одно из значений status, error, info или warning.
Msg_text Сообщение.



Просмотреть сохраненное распределение ключей можно при помощи команды SHOW INDEX. См. раздел Получение информации по базам данных, таблицам, столбцам и индексам.


Если таблица не изменялась с момента предыдущего запуска команды ANALYZE TABLE, повторный анализ таблицы проводиться не будет.


Вперед  >>>
 1  2  3  4  5  6  7 


 8  Комментарии к статье  8 8  Обсудить в чате

8  В тему

Конфигурирование MySQL

Общие проблемы безопасности и система привилегий доступа MySQL

Управление учетными записями пользователей MySQL

Предотвращение катастроф и восстановление

Локализация MySQL и использование национальных алфавитов

Серверные сценарии и утилиты MySQL

Клиентские сценарии и утилиты MySQL

Файлы журналов MySQL

Репликация в MySQL

 
  
  
    Copyright ©  RIN 2003 - 2004      * Обратная связь