7.3 Таблицы ISAM
В MySQL пока еще можно применять и устаревший тип таблиц ISAM
. В
ближайшем времени этот тип будет исключен (возможно, в MySQL 4.1), так как
MyISAM является улучшенной реализацией тех же возможностей. В таблицах ISAM
используется индекс B-tree. Индекс хранится в файле с расширением `.ISM', а
данные - в файле с расширением `.ISD'. Таблицы ISAM
можно
проверять/восстанавливать при помощи утилиты isamchk
(see section 7.1 Таблицы MyISAM).
Ниже перечислены свойства таблиц ISAM
:
- Ключи со сжатой и фиксированной длиной
- Фиксированная и динамическая длина записи
- 16 ключей с 16 частями ключей/ключами
- Максимальная длина ключа 256 (по умолчанию)
- Данные хранятся в машинном формате; благодаря этому обеспечивается
скорость, но возникает зависимость от компьютера/ОС.
Большинство параметров таблиц MyISAM
также соответствуют таблицам ISAM
.
See section 7.1 Таблицы MyISAM. Ниже перечислены основные отличия таблиц ISAM
от MyISAM
:
- Таблицы
ISAM
не являются переносимыми в двоичном виде с одной
ОС/платформы на другую;
- Невозможна работа с таблицами > 4Гб.
- В строках поддерживается только сжатие префикса.
- Ограничения по маленьким ключам.
- Динамические таблицы больше фрагментируются.
- Таблицы сжимаются при помощи
pack_isam
, а не при помощи myisampack
.
Если вы хотите преобразовать таблицу ISAM
в таблицу MyISAM
, чтобы иметь
возможность работать с такими утилитами, как mysqlcheck
, воспользуйтесь
оператором ALTER TABLE
:
mysql> ALTER TABLE tbl_name TYPE = MYISAM;
Встроенные версии MySQL не поддерживают таблицы ISAM
.