Какой тип таблиц в MySQL использовать, каждый решает для себя сам, отталкиваясь от своих личных предпочтений и/или требований к создаваемому проекту.
На текущий момент в MySQL 5.x дефолтным типом таблиц является MyISAM. Но есть небезосновательное предположение, что уже в шестой версии стандартным может стать InnoDB.
У MyISAM слишком много недостатков по сравнению с InnoDB, а некоторые преимущества (как, например, скорость выполнения выборок) уже либо сошли на нет, либо с постоянным удешевлением железа стали не столь актуальны.
А если учесть, что сейчас разрабатывается новый тип таблиц Falcon, который в перспективе должен стать основным и заменить InnoDB, можно с уверенностью сказать — MyISAM морально и технически устарел.
И последним аргументом, заставившим меня при прочих равных выбирать именно InnoDB, стало то, что при инсталяции Drupal 7.x создает таблицы именно типа InnoDB. В версиях 6.x и ниже по умолчанию создавались таблицы типа MyISAM.
Что касательно хостеров. С хостерами правило «что не запрещено, то разрешено» решительно не работает. Если в описании тарифного плана не сказано, что поддержка InnoDB выключена, то это совершенно не означает, что InnoDB поддерживается. Сам я с этим столкнулся, когда попытался создать таблицу InnoDB и не получилось (хостер Петерхост). Перерыв все инструкции и описания тарифов и так и не найдя какого-либо упоминания запрещенных типов таблиц, отписался в тех-поддержку. На что получил ответ:
Поддержка InnoDB есть только на тарифных планах серии Особый Хостинг.
Если что - «Особый Хостинг» это самые дорогие тарифы на виртуальный хостинг у Петерхоста, 870 или 1800 рублей в месяц в зависимости от конфигурации. Для более дешевых тарифов поддержка InnoDB выключена.
И аналогичная ситуация со многими хостерами. Заходишь на сайт и ищешь информацию — ни одного упоминания о запрете InnoDB. Вбиваешь в гугл «%hoster_name% innodb» - и чаще всего получаешь ссылки на десятки обсуждений вида «как же так, почему innodb не поддерживается?».
Так что на данный момент узнать, поддерживается у хостера InnoDB или нет, можно только спросив непосредственно у суппорта. Хотя сам факт того, что выключают поддержку InnoDB, достаточно странный. Понятно, что через пару лет InnoDB будет доступен на любом тарифном плане, но на сегодня ситуация такова, что на виртуальном хостинге в среднем ценовом диапазоне и ниже поддержка InnoDB может быть выключена, а точнее — скорее всего выключена.
Комментарии
Покупай VPS и рули как хочешь :)
До необходимости переезда на VPS мне еще далеко, виртуальный хостинг устраивает полностью, за исключением разве что редких неприятных мелочей, как отсутствие поддержки InnoDB. Да и с Петерхоста съезжать не хочу, а они услуги VPS не предоставляют, только виртуальный хостинг или выделенные сервера. Хотя по их заверениям топовые тарифы на виртуальных хостинг ничем не хуже VPS за счет ограничения количества клиентов на каждый сервер (не более 10 или 20 в зависимости от тарифа).
PS
Спасибо за комментарий - помог выявить проблему с кэшированием=) Почему-то без ручного сброса кэша твой комментарий не показывался, если адрес вводить без www, буду разбираться)
Впс впринципе не слишком сейчас дорогой можно и на него пересесть.
ИМХО, лучше дорогой виртуальный хостинг, чем дешевый VPS=) А вообще экономить на хостинге - зло, особенно учитывая, что у многих затраты на одну только покупку ссылок в месяц чаще всего больше, чем на хостинг за целый год.