2012-03-10 3 views
8

MySQL позволяет вам указать другой механизм для таблицы с сервера по умолчанию. Какие накладные расходы это создает? Если бы я хотел присоединиться к таблице, которая использует InnoDB со таблицей, в которой используется MyISAM, какой движок использует MySQL для запуска запросов в этой таблице temp? Например, если бы я хотел выполнить задачу на этой результирующей временной таблице, которую может сделать только один движок (например, полнотекстовая индексация), может ли оптимизатор MySQL использовать правильный движок?MySQL - Различные двигатели для разных таблиц

Есть ли другая причина не указывать конкретные двигатели для определенных таблиц, даже если они могут отличаться от сервера по умолчанию?

+0

Возможно, это сообщение отвечает на ваш запрос - http://stackoverflow.com/questions/5475283/joining-innodb-tables-with-myisam-tables – Abhay

+0

Если у вас нет особых причин для смешивания систем хранения (например, проблемы с производительностью) просто избегайте этого. –

ответ

3

Существует штраф за перемещение двигателей хранения. Взгляните на here.

+0

Уход за предоставлением нескольких ссылок? – Xailor

+1

Слово "here" - это ссылка на mysqlperformanceblog. Я всегда воспринимаю их достаточно компетентно, поэтому не искал больше ссылок. Вы имели в виду еще несколько ссылок? –

+1

Ха, извините, я сначала прочитал его на своем мобильном телефоне, который, похоже, не выдал ссылку. Ура, – Xailor