Показать страницуИстория страницыСсылки сюдаCopy this pageExport to MarkdownODT преобразованиеНаверх Вы загрузили старую версию документа! Сохранив её, вы создадите новую текущую версию с этим содержимым. Медиафайлы{{tag>myisam mysql}} ===== MyISAM ===== * транзакций нет * макс. диск: 256Тб * блокировка таблица * полнотекстовый поиск * работа в кластере: нет * поддержание целостности, внешние ключи: нет * репликация: да * макс. индексов: 64 * макс. записей: 2^32 * макс. длина ключа: 1000 байт * ключи занимают место на диске до (макс.): (key_length+4)/0.67 * чувствительные к «падению» сервера, сложно восстанавливать * при отсутствии «дырок» (gaps) — вставки не конкурентные (блокировок не происходит) * возможно хранить файлы данных и индексов на разных устройствах каждый столбец может иметь свою кодировку * макс. сумма длин VARCHAR и CHAR: 64к **Static (Fixed-length) формат таблиц** * автоматически, если нет VARCHAR, VARBINARY, BLOB, TEXT столбцов * быстрее, безопаснее (устойчивее), лучше кешируется, требует больше места на диске * если указать принудительно, VARCHAR и CHAR заполняются пробелами, VARBINARY — нулями **Dynamic length формат таблиц** * все строки длиной до 4 — VARCHAR * пустые строки и ноль (0) не занимают места на диске (NULL это не ноль) * запись (строка) фрагментируется автоматически при апдейтах (нужно запускать OPTIMIZE TABLE для дефрагментации) * сложнее восстановить при сбоях **Compressed** * создается утилитой myisampack * read-only * рекомендуется для очень медленных носителей * может быть и fixed-length и dynamic-length * посмотрите в сторону Archive table engine ==== Советы/Рекомендации ==== говорят, что MyISAM таблицы обязательно «ломаются» рано или поздно, так что будте готовы ;) не убивайте сервер во время записи не изменяйте таблицы несколькими серверами одновременно не изменяйте таблицы утилитой и сервером одновременно Рекомендации: справочники ===== Aria ===== ===== Восстановление ===== * tbl_name.frm: Table definition * tbl_name.MYD: Table data * tbl_name.MYI: Table indexes <code> CHECK TABLE tbl_name QUICK; REPAIR TABLE tbl_name EXTENDED; </code>СохранитьПросмотрРазличияОтменить Сводка изменений Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии: CC0 1.0 Universal