Администрирование пакета MySQL - Подробно о таблицах
ОГЛАВЛЕНИЕ
Страница 14 из 16
Подробно о таблицах
Для получения описания таблицы используйте команду (Вы должны перейти в каталог, который содержит таблицу, информацию о которой Вы желаете получить. Вообще это будет $DATADIR/[dbname], где dbname - имя базы данных, которая содержит таблицу.):
prompt> isamchk -d table_name
ISAM file: table_name
Data records: 215 Deleted blocks: 0
Recordlength: 85
Record format: Packed
table description:
Key Start Len Index Type
1 37 14 unique text packed stripped
2 1 30 multip. text packed stripped
3 51 4 multip. long
4 31 2 multip. short
33 2 short
35 2 short
Для более подробных сведений о таблице попробуйте:
prompt> isamchk -d -v table_name
ISAM file: Customer
Isam-version: 2
Creation time: 1996-12-17 21:40:04
Data records: 0 Deleted blocks: 0
Datafile: Parts: 0 Deleted data: 0
Datafilepointer (bytes): 4 Keyfile pointer (bytes): 3
Recordlength: 374
Record format: Packed
table description:
Key Start Len Index Type Root Blocksize Rec/key
1 2 2 unique short -1 1024 1
2 4 80 multip. text packed stripped -1 1024 1
3 2 2 multip. short -1 1024 1
Объяснение полученного результата:
ISAM file | Имя ISAM-файла. |
Isam-version | Версия ISAM формата. Сейчас всегда 2. |
Creation time | Когда файл данных был создан? |
Recover time | Когда в последний раз был восстановлен файл индекса/данных? |
Data records | Сколько записей/строк. |
Deleted blocks | Сколько удаленных блоков все еще занимают место? См. примеры в разделе по isamchk для информации относительно избавления от неиспользуемого места. |
Datafile: Parts | Для динамической записи это показывает, сколько блоков данных в ней. Для оптимизированной таблицы без дырок это будет то же, что и Data records. |
Deleted data | Сколько всего байт занимают удаленные данные. |
Datafilepointer | Сколько байтов занимает указатель файла данных? Это 2, 3 или 4 байта. Большинство таблиц обходится 2 байтами, но это не может управляться из MySQL. Для фиксированных таблиц это адрес записи. Для динамических таблиц это адрес байта. |
Keyfile pointer | Сколько байтов занимает указатель файла данных? Это обычно 1, 2 или 3 байта. Большинство таблиц обходится 2 байтами, но это вычисляется mysql автоматически. Это всегда адрес блока. |
Max datafile length | Сколько байт может использовать для этой таблицы файл данных (.ISD). |
Max keyfile length | Сколько байт может использовать для этой таблицы файл ключей. |
Recordlength | Сколько пробела занимает каждая запись/строка? |
Record format | Какой формат имеет каждая запись/строка? |
table description | Список всех ключей в таблице. Для каждого ключа выводится краткая информация низкого уровня (большее количество информации в следующей таблице). |
Краткая информация низкого уровня для каждого ключа:
Key | Номер ключа. |
Start | Где в записи/строке начинается индексная часть. |
Len | Какой длины индексная часть? Для упакованных чисел это всегда полная длина поля. Для строк она может быть короче полной длины (хотя MySQL все же не поддерживает такой вариант). |
Index | unique или multip. |
Type | Какой тип данных имеет эта индексная часть? Это - C тип данных (опционально packed или short). |
Root | Адрес корня индексного блока. |
Blocksize | Размер каждого индексного блока. По умолчанию 1024, но это может быть изменено во время компиляции. |
Rec/key | Статистическое значение, используемое оптимизатором. Оно сообщает, сколько записей приходится на этот ключа. Уникальный ключ всегда имеет значение 1. Это может измениться после того, как таблица загружена и стабилизирована, используя isamchk -a . По умолчанию 30. |
MySQL FAQ имеет обширную информацию по этой теме.