Ответ 1
Читайте о Двигатели хранения.
MyISAM:
MyISAM механизм хранения в MySQL.
- Проще создавать и создавать, тем лучше для новичков. Не беспокойтесь о внешних отношениях между таблицами.
- Быстрее, чем InnoDB в целом в результате более простой структуры, что значительно снижает затраты на серверные ресурсы. - Больше не вернее.
- Полнотекстовая индексация. - У InnoDB есть это сейчас.
- Особенно полезно для таблиц с интенсивным чтением (выберите). - Больше не вернее.
- Площадь дискового пространства в 2 раза меньше, чем у InnoDB. - Начиная с версии 5.7, это, пожалуй, единственное реальное преимущество MyISAM.
InnoDB:
Механизм хранения InnoDB в MySQL.
- Поддержка транзакций (поддержка поддержки ACID).
- Блокировка уровня строки. Имея более мелкозернистый механизм блокировки, вы получаете более высокий concurrency по сравнению с, например, MyISAM.
- Ограничения внешнего ключа. Позволяя вам предоставить базе данных гарантию целостности состояния базы данных и отношения между таблицами.
- InnoDB более устойчив к повреждению таблиц, чем MyISAM.
- Поддержка большого пула буферов для данных и индексов. Буфер ключей MyISAM предназначен только для индексов.
- MyISAM застаивается; все будущие улучшения будут в InnoDB. Это было сделано совершенно ясно с выходом из версии 8.0.
Ограничения MyISAM:
- Нет внешних ключей и каскадных удалений/обновлений
- Отсутствие целостности транзакций (соответствие ACID)
- Нет откатных возможностей
- 4,284,867,296 ограничение по строке (2 ^ 32) - это старое значение по умолчанию. Конфигурируемый предел (для многих версий) составляет 2 ** 56 байт.
- Максимум 64 индекса на таблицу
Ограничения InnoDB:
- Нет полной индексации текста (версия ниже версии 5.6 mysql)
- Невозможно сжать для быстрого, только для чтения (5.5.14 введено
ROW_FORMAT=COMPRESSED
) - Вы не можете восстановить таблицу InnoDB
Для краткого понимания прочитайте ссылки ниже: