Как оптимизировать MySQL для WordPress?
Эффективность настройки MySQL может очень сильно влиять на производительность работы сайта на WordPress.
Поскольку WordPress использует InnoDB таблицы, нам необходимо настроить MySQL сервер под оптимальную работу с ними.
Откройте файл my.cnf (обычно /etc/my.cnf) и измените следующие настройки. В нашем случае конфигурируем MySQL для сервера с 1 ядром и 512Мб оперативной памяти, на котором работает еще и PHP и MySQL.
max_connections = 64
Максимальное количество соединений следует подбирать под нагрузку и количество ядер, но лучше начать с 64.
innodb_buffer_pool_size = 256M
Этот параметр нужно установить в 70…80% доступной оперативной памяти. В нашем случае часть памяти будет использована под PHP и Nginx.
innodb_flush_log_at_trx_commit = 2
Этот параметр позволяет оптимизировать работу с записью InnoDB таблиц на диск. Вместо дорогих операций сброса лога на диск после каждой транзакции, MySQL будет сбрасывать лог в операционный кеш.
thread_cache_size = 16
Количество потоков (тредов), которые будут храниться в кеше. Нужно следить за ростом создаваемых потоков.
query_cache_size = 32M
query_cache_limit = 1M
Общий размер кеша и его лимит для каждого запроса. Также стоит увеличивать по мере роста нагрузки и данных. Осторожно. Слишком большие значения могут привести к потере производительности.
Более детальная и тонкая настройка Mysql под нагрузки. Также посмотрите видео по тюнингу MySQL для WordPress от Ильи Полихронова.
Сообщить об опечатке
Текст, который будет отправлен нашим редакторам: