6.9.4 Статус и поддержка кэша запросов | Оглавление | 7.1 Таблицы MyISAM |
В MySQL версии 3.23.6 можно было выбирать из трех основных форматов таблиц (ISAM
, HEAP
и MyISAM
). Более новые версии MySQL могут поддерживать дополнительные типы таблиц (InnoDB
или BDB
) - в зависимости от варианта установки.
При создании новой таблицы можно указать MySQL, какой тип таблицы для нее использовать. Для таблицы и определений столбцов MySQL всегда создает файл `.frm'. Индекс и данные хранятся в других файлах (их расширения зависят от типа таблицы).
Обратите внимание: если необходимо использовать таблицы InnoDB
, при запуске следует указать параметр innodb_data_file_path
. See section 7.5.2 Параметры запуска InnoDB.
Принятым по умолчанию типом таблиц в MySQL является MyISAM
. Если попытаться воспользоваться таблицей, которая не была активизирована или добавлена при компиляции, MySQL вместо нее создаст таблицу типа MyISAM
. Это очень полезная функция, когда необходимо произвести копирование таблиц с одного SQL-сервера на другой, а серверы поддерживают различные типы таблиц (например, при копировании таблиц на подчиненный компьютер, который оптимизирован для быстрой работы без использования транзакционных таблиц). Тем не менее, такое автоматическое изменение таблиц может сбить с толку новых пользователей MySQL. Мы планируем устранить эту проблему путем введения в MySQL 4.0 предупреждений, которые будут выводиться при автоматическом изменении типов таблиц.
Преобразовывать таблицы из одного типа в другой можно при помощи оператора ALTER TABLE
. See section 6.5.4 Синтаксис оператора ALTER TABLE
.
Обратите внимание на то, что MySQL поддерживает два различных типа таблиц: транзакционные (InnoDB
и BDB
) и без поддержки транзакций (HEAP
, ISAM
, MERGE
и MyISAM
).
Преимущества транзакционных таблиц (Transaction-safe tables, TST):
COMMIT
.ROLLBACK
, чтобы отменить внесенные изменения (если работа не производится в режиме автоматической фиксации).Преимущества таблиц без безопасных транзакций (non-transaction-safe tables, NTST):
В операторах можно сочетать таблицы TST и NTST, чтобы взять лучшее от каждого типа.
6.9.4 Статус и поддержка кэша запросов | Оглавление | 7.1 Таблицы MyISAM |