Документация MySQL

29.09.2007

Команды, представленные в этом разделе, используются для получения
описания таблицы или статистики по таблице. Более подробное выборочное
разъяснение вывода этих команд будет приведено ниже:
myisamchk -d tbl_name

Выполняет myisamchk в "описательном режиме" для
вывода описания таблицы. Если MySQL использует опцию
, то
может сообщить об ошибке для таблицы, обновляемой во время
исполнения утилиты. Однако поскольку
не меняет таблицы в
описательном режиме, то никакого риска разрушения данных нет.
myisamchk -d -v tbl_name

Для выдачи дополнительной информации по
действиям, выполняемым утилитой
, добавляется -v для указания
расширенного режима вывода сообщений.
myisamchk -eis tbl_name

Отображается только наиболее важная информация
из таблицы. Работает медленно вследствие того, что приходится считывать
всю таблицу.
myisamchk -eiv tbl_name

То же, что и
, но с сообщением о выполняемых
действиях.
MyISAM file: company.MYI
Record format: Fixed length
Data records: 1403698 Deleted blocks: 0
Recordlength: 226

table description:
Key Start Len Index Type
1 2 8 unique double
2 15 10 multip. text packed stripped
3 219 8 multip. double
4 63 10 multip. text packed stripped
5 167 2 multip. unsigned short
6 177 4 multip. unsigned long
7 155 4 multip. text
8 138 4 multip. unsigned long
9 177 4 multip. unsigned long
193 1 text
MyISAM file: company
Record format: Fixed length
File-version: 1
Creation time: 1999-10-30 12:12:51
Recover time: 1999-10-31 19:13:01
Status: checked
Data records: 1403698 Deleted blocks: 0
Datafile parts: 1403698 Deleted data: 0
Datafilepointer (bytes): 3 Keyfile pointer (bytes): 3
Max datafile length: 3791650815 Max keyfile length: 4294967294
Recordlength: 226

table description:
Key Start Len Index Type Rec/key Root Blocksize
1 2 8 unique double 1 15845376 1024
2 15 10 multip. text packed stripped 2 25062400 1024
3 219 8 multip. double 73 40907776 1024
4 63 10 multip. text packed stripped 5 48097280 1024
5 167 2 multip. unsigned short 4840 55200768 1024
6 177 4 multip. unsigned long 1346 65145856 1024
7 155 4 multip. text 4995 75090944 1024
8 138 4 multip. unsigned long 87 85036032 1024
9 177 4 multip. unsigned long 178 96481280 1024
193 1 text
Checking MyISAM file: company
Key: 1: Keyblocks used: 97% Packed: 0% Max levels: 4
Key: 2: Keyblocks used: 98% Packed: 50% Max levels: 4
Key: 3: Keyblocks used: 97% Packed: 0% Max levels: 4
Key: 4: Keyblocks used: 99% Packed: 60% Max levels: 3
Key: 5: Keyblocks used: 99% Packed: 0% Max levels: 3
Key: 6: Keyblocks used: 99% Packed: 0% Max levels: 3
Key: 7: Keyblocks used: 99% Packed: 0% Max levels: 3
Key: 8: Keyblocks used: 99% Packed: 0% Max levels: 3
Key: 9: Keyblocks used: 98% Packed: 0% Max levels: 4
Total: Keyblocks used: 98% Packed: 17%

Records: 1403698 M.recordlength: 226
Packed: 0%
Recordspace used: 100% Empty space: 0%
Blocks/Record: 1.00
Record blocks: 1403698 Delete blocks: 0
Recorddata: 317235748 Deleted data: 0
Lost space: 0 Linkdata: 0

User time 1626.51, System time 232.36
Maximum resident set size 0, Integral resident set size 0
Non physical pagefaults 0, Physical pagefaults 627, Swaps 0
Blocks in 0 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 639, Involuntary context switches 28966
Checking MyISAM file: company
Data records: 1403698 Deleted blocks: 0
- check file-size
- check delete-chain
block_size 1024:
index 1:
index 2:
index 3:
index 4:
index 5:
index 6:
index 7:
index 8:
index 9:
No recordlinks
- check index reference
- check data record references index: 1
Key: 1: Keyblocks used: 97% Packed: 0% Max levels: 4
- check data record references index: 2
Key: 2: Keyblocks used: 98% Packed: 50% Max levels: 4
- check data record references index: 3
Key: 3: Keyblocks used: 97% Packed: 0% Max levels: 4
- check data record references index: 4
Key: 4: Keyblocks used: 99% Packed: 60% Max levels: 3
- check data record references index: 5
Key: 5: Keyblocks used: 99% Packed: 0% Max levels: 3
- check data record references index: 6
Key: 6: Keyblocks used: 99% Packed: 0% Max levels: 3
- check data record references index: 7
Key: 7: Keyblocks used: 99% Packed: 0% Max levels: 3
- check data record references index: 8
Key: 8: Keyblocks used: 99% Packed: 0% Max levels: 3
- check data record references index: 9
Key: 9: Keyblocks used: 98% Packed: 0% Max levels: 4
Total: Keyblocks used: 9% Packed: 17%

- check records and index references
[кое-что опущено для краткости]

Records: 1403698 M.recordlength: 226 Packed: 0%
Recordspace used: 100% Empty space: 0% Blocks/Record: 1.00
Record blocks: 1403698 Delete blocks: 0
Recorddata: 317235748 Deleted data: 0
Lost space: 0 Linkdata: 0

User time 1639.63, System time 251.61
Maximum resident set size 0, Integral resident set size 0
Non physical pagefaults 0, Physical pagefaults 10580, Swaps 0
Blocks in 4 out 0, Messages in 0 out 0, Signals 0
Voluntary context switches 10604, Involuntary context switches 122798
-rw-rw-r-- 1 monty tcx 317235748 Jan 12 17:30 company.MYD
-rw-rw-r-- 1 davida tcx 96482304 Jan 12 18:35 company.MYM
информации. ''keyfile'' означает индексный файл. ''Record'' (запись) и ''row''
(строка) являются синонимами:
ISAM file - Имя (индексного) файла ISAM.
Isam-version - Версия формата ISAM. На данный момент всегда 2.
Creation time - Время создания файла данных.
Recover time - Дата последнего восстановления индексного файла/файла

данных.
Data records - Количество записей в таблице.
Deleted blocks - Количество удаленных блоков, пространство для которых

все еще зарезервировано. Таблицу можно оптимизировать для сведения к
минимуму этого пространства (see section
).
Datafile parts - Для динамического формата записей показывает количество

блоков данных. Для оптимизированной таблицы без фрагментированных записей
совпадает с
.
Deleted data - Количество байтов удаленных данных, которые не были

затребованы. Можно оптимизировать таблицу, чтобы сделать этот объем
минимальным (see section
).
Data file pointer - Размер указателя в файле данных (в байтах). Обычно

это 2, 3, 4 или 5 байтов. Для большинства таблиц достаточно 2 байтов, но
назначение размера пока невозможно контролировать из MySQL. Для
фиксированных таблиц указатель - это адрес записи, а для динамических -
адрес байта.
Keyfile pointer - Размер указателя индексного файла в байтах. Обычно

составляет 1, 2 или 3 байта. Для большинства таблиц хватает 2 байтов, но
размер автоматически вычисляется MySQL. Указатель всегда является адресом
блока.
'.MYD'
-файл) в байтах.
'.MYI-файла'
) в байтах.
Recordlength - Размер отдельной записи в байтах.
Record format - Формат, используемый для хранения строк таблицы. В

примерах, приведенных выше, использовался формат
. Другие
возможные значения:
.
table description - Список всех ключей в таблице. Для каждого ключа

представляется некоторая низкоуровневая информация:
Key

Номер данного ключа.
Start

Место в записи, где начинается данная часть индекса.
Len

Длина данной части индекса. Для упакованных чисел длина всегда
должна равняться полной длине для столбца. Для строк длина может быть
меньше полной длины индексированной колонки, поскольку допускается
индексирование префикса столбца со значениями строками.
. (multiple - повторяющийся/многократный)

Показывает, может ли одно значение встречаться в индексе многократно.
Type

Тип данных данной части индекса. Это тип данных
,
.
Root

Адрес корневого индексного блока.
Blocksize

Размер каждого индексного блока. По умолчанию равен 1024, но
значение можно изменить во время компиляции.
Rec/key

Статистическое значение, используемое оптимизатором. Оно
показывает, сколько записей приходится на одно значение для данного ключа.
Для уникального ключа это соотношение всегда 1. Значение может быть
обновлено после загрузки таблицы (или значительного ее изменения)
посредством
. Если соотношение совсем не обновляется, то по
умолчанию принимается значение 30.
В первом из приведенных примеров 9-й ключ является составным с двумя

частями.
Keyblocks used - Процент использованных блоков ключей. Поскольку для

примера была взята таблица, совсем недавно реорганизованная при помощи
, то значения очень высоки (очень близки к теоретическому
максимуму).
Packed - MySQL пытается упаковывать ключи с общим суффиксом. Это может

быть использовано только для ключей типа
. Для длинных
строк, таких как имена, при помощи упаковки можно значительно уменьшить
занимаемое ими место. В третьем из приведенных примеров 4-й ключ состоит
из 10 символов и для него достигнуто 60%-е уменьшение в объеме.
Max levels - Глубина B-дерева для данного ключа. В больших таблицах с

длинными ключами значение является большим.
Records Количество строк в таблице.
M.recordlength - Средняя длина записи. Для таблиц с фиксированной длиной

записи равняется точной длине записи.
Packed - MySQL отбрасывает пробелы в конце строк. Значение
указывает на процент достигнутой этим экономии.
Recordspace used - Процент использования файла данных.
Empty space - На сколько процентов файл данных не использован.
Blocks/Record - Среднее число блоков на запись (т.е. из какого числа

связей состоит фрагментированная запись). Отношение всегда 1,0 для таблиц
фиксированного формата. Важно, чтобы это значение было как можно ближе к
1,0. Если значение становится слишком большим, можно реорганизовать
таблицу с помощью
. Обращайтесь к разделу See section
.
Recordblocks - Количество использованных блоков (связей). Для

фиксированного формата совпадает с количеством записей.
Deleteblocks - Количество удаленных блоков (связей).
Recorddata - Количество использованных байтов в файле данных.
Deleted data - Количество удаленных (неиспользуемых) байтов в файле

данных.
Lost space - Если запись при обновлении уменьшается, то теряется

некоторое пространство. Данное значение является суммой всех таких потерь
в байтах.
Linkdata - При использовании динамического формата таблиц фрагменты

записи связываются с помощью указателей (каждый от 4 до 7 байтов).
- общий объем памяти, занимаемый всеми такими указателями.
, то
выдает
дополнительную информацию о каждом столбце в таблице. Обращайтесь к
разделу See section
, MySQL-генератор сжатых таблиц (только для чтения)
, где
приведен пример такой информации и пояснение к ней.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Рубрики: Без рубрики |

Оставить комментарий

Заметьте: Включена проверка комментариев. Нет смысла повторно отправлять комментарий.

Документация MySQL

29.09.2007

Этот раздел дает ответ на следующие вопросы '' Насколько стабильным
является MySQL?
'' и '' Могу ли я положиться на MySQL в своем
проекте?
'' Мы попытаемся внести ясность в эти проблемы, а также ответить
на некоторые важные вопросы, которые имеют значение для многих
потенциальных пользователей. Информация данного раздела базируется на
данных из списка рассылки, - наши пользователи очень активно сообщают нам
о выявленных проблемах и о своем опыте использования нашего ПО.
Самые первые версии кода были созданы в начале 80-х. Это был устойчивый
код с форматом таблиц
, обеспечивающим обратную совместимость с
предыдущими версиями. Во времена компании TcX, предшественника MySQL AB, с
середины 1986 года код MySQL работал в проектах без каких-либо проблем. Но
когда сервер MySQL был выпущен для широкого использования, оказалось, что
существует несколько фрагментов ''непротестированного кода''. Эти
фрагменты были быстро обнаружены новыми пользователями, которые составляли
запросы в несколько ином виде, чем мы.
С каждым новым релизом количество проблем, связанных с переносимостью,
уменьшалось (несмотря на то, что в каждом выпуске появлялось множество
новых возможностей).
Каждый релиз MySQL был рабочим, проблемы возникали только при
использовании кода из ''серых зон''. Естественно, что новые пользователи
не знают о том, где находятся такие ''серые зоны''; в данном разделе
сделана попытка описать те из них, которые известны на данный момент.
Большая часть описания относится к версии 3.23 MySQL-сервера. В самой
последней версии все известные ошибки устранены, за исключением тех,
которые перечислены в разделе ошибок, а также конструктивных дефектов.
See section
.
Структура ПО MySQL является многоуровневой с независимыми модулями.
Некоторые из новейших модулей перечислены ниже, причем по каждому дается
информация о том, насколько хорошо он протестирован.
Репликация - Gamma Большие серверные кластеры, в которых применяется репликация, находятся в
промышленной эксплуатации и показывают хорошие результаты. Работа над
средствами репликации в MySQL 4.x продолжается.
-таблицы - стабильно (в 3.23 с 3.23.49)
-таблиц объявлен в настоящее время
стабильными в дереве MySQL 3.23, начиная с версии 3.23.49.
используется в больших промышленных системах с большой нагрузкой.
-таблицы - Gamma очень устойчив, но на настоящий момент продолжается
усовершенствование интерфейса обработчика транзакционных
-таблиц с
MySQL, поэтому должно пройти некоторое время, пока он будет так же хорошо
протестирован, как и таблицы других типов.
- Beta Полнотекстовый поиск работает, но широко не используется. В версии MySQL
4.0 реализованы существенные улучшения данной возможности.
MyODBC 2.50
(использующий ODBC SDK 2.5) - Gamma
Чрезвычайно широко используется. Как оказалось, некоторые из возникших
проблем являются зависящими от приложения, а не от ODBC-драйвера или
сервера баз данных.
-таблиц - Gamma Статус Gamma относится только к новому коду в обработчике таблиц, который
проверяет правильность закрытия таблицы после ее открытия и выполняет
автоматическую проверку/восстановление незакрытой таблицы.
Вставка больших объемов данных - Alpha -таблицах в MySQL 4.0 для быстрой вставки
большого количества строк.
Блокировка - Gamma В большой степени зависит от системы. В некоторых системах возникают
большие проблемы с использованием стандартной для ОС блокировки
(
). В таких случаях следует запустить демон
. Известно, что проблемы имеют место в некоторых системах
Linux и в SunOS, когда используются NFS-монтированные файловые системы.
Несмотря на то, что высококвалифицированную поддержку MySQL AB
обеспечивает за плату, в списке рассылки MySQL обычно можно получить
ответы на часто возникающие вопросы. Ошибки обычно ликвидируются сразу же
при помощи патчей, а серьезные дефекты почти всегда устраняются в новом
выпуске.

google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru

Рубрики: Без рубрики |

Оставить комментарий

Заметьте: Включена проверка комментариев. Нет смысла повторно отправлять комментарий.