MyISAM или InnoDB для Wordpress
TL;DR Выбирать надо InnoDB. Это современный развивающийся движок хранения данных. MyISAM — это устаревший и уже не развивающийся engine, забыть про него надо. MyISAM следует использовать только тогда, когда вы четко можете сказать, в чем именно для вас выигрыш от него.
Обычно MySQL (MariaDB) по дефолту создают базы в InnoDB. Но это оказалось заблуждением. Как оказалось, в вордпрессе чехарда из движков базы данный MySQL (MariaDB). Ситуации бывают трех видов:
- Все таблицы в MyISAM. Это не смертельно, но лучше все их преобразовать в InnoDB.
- Все таблицы в InnoDB. Это супер! Ничего делать не надо больше.
- Часть таблиц в MyISAM, часть в InnoDB. Все надо преобразовать в InnoDB.
Есть и ложка дегтя. Я не могу пока сформулировать четко причину, но некоторые плагины упорно создают таблицы в MyISAM. Поэтому после установки всех плагинов надо зайти в phpmyadmin (вот HowTO, как проще поменять) и перепроверить движки хранения данных. При необходимости все сконвертировать в InnoDB.
Я нашел на стейджинге самый крупный сайт на вордпрессе в нашем портфолио, база была 0,9Gb. Сделал замеры скорости для MyISAM и InnoDB. Результаты: потребление ОЗУ при InnoDB выросло в 1,5 раза. Нагрузка на процессор осталась такой же, а вот скорость генерации страниц выросла на 20-35%. На мой взгляд это отличная и простая возможность увеличить скорость работы wordpress.