Показать страницуИстория страницыСсылки сюдаCopy this pageExport to MarkdownODT преобразованиеНаверх Вы загрузили старую версию документа! Сохранив её, вы создадите новую текущую версию с этим содержимым. Медиафайлы{{tag>mysql innodb}} ===== InnoDB ===== * макс. диск: 64Тб * полная поддержка транзакций (4 уровня изоляции) * блокировка записи/строк (не таблицы), два вида блокировок (SHARED, EXCLUSIVE) * полнотекстовый индекс: нет * безопасная для транзакций * индексы кластеризуются для «типичных запросов» * поддержка целостности (внешние ключи) * может использоваться на ОС с ограниченным размером файла * множество настроек для оптимизации * позволяет использовать Raw Disk для таблиц в обход ФС * по умолчанию включен AUTOCOMMIT (SET autocommit=1) * автоматически детектит дэдлоки ([[mysql:deadlock|deadlocks]]) Движок был разработан специально для больших таблиц. Разработчики заявляют, что InnoDB — самый быстрый из всех известных движков для БД основанных на дисках (множественные тесты это подтверждают) ==== Советы/Рекомендации ==== * SELECT COUNT(*) FROM table работает гораздо медленнее, чем MyISAM — создавайте триггеры если нужно (COUNT, SUM, AVG, etc) * бэкап простым копирование файлов невозможен * mysqldump работает медленно, для бэкапа используйте InnodDb Hot Backup * следите за индексами, выгода InnoDB теряется, если для запросов нет индексов Рекомендации: высоконагруженные сайты, финансовые транзакции ===== XtraDB ===== ===== MERGE ===== * Используется для объединения одинаковых таблиц в одну * таблицы должны иметь идентичную структуру * порядок столбцов должен совпадать * DROP не удаляет исходных таблиц * таблицы могут быть в другой базе данных * можно использовать для алиасов (для одной таблицы) * нельзя пользоваться FULLTEXT search * нельзя смешивать временные и не временные таблицы * медленная при чтении по ключу * REPLACE не работает * не отслеживаются изменения в структуре исходных таблиц (таблица будет поломана) ==== Советы/Рекомендации ==== Рекомендации: «удобная» (ре)организация таблиц ===== HEAP (MEMORY) ===== * транзакций нет * блокировка таблицы * репликация: да * макс. длина ключа: 500 байт * все данные теряются при остановке сервера (сама таблица остаётся) * формат хранения: всегда fixed-length row * память не высвобождается при удалении записи (используется для вставки новых) ==== Советы/Рекомендации ==== большие таблицы «свопяться» на диск и выигрыш теряется Рекомендации: Локальные вычисления, временные данные ===== ARCHIVE ===== * макс. диск: нет ограничения * блокировка записи * не работает DELETE, REPLACE, UPDATE, ORDER BY, тип BLOB * INSERT буферизируется и «сливается» с большой задержкой * очень медленный SELECT ==== Советы/Рекомендации ==== Рекомендации: логирование операций (аудит, статистические данные, счетчики) СохранитьПросмотрРазличияОтменить Сводка изменений Примечание: редактируя эту страницу, вы соглашаетесь на использование своего вклада на условиях следующей лицензии: CC0 1.0 Universal