🗄️
Хостинг

Оптимизация и тюнинг MySQL: ускорение базы данных

20.03.2030
← Все статьи

MySQL — самая популярная реляционная СУБД, 60%+ сайтов мира работают на ней. Дефолтные настройки консервативны и не подходят современным сайтам — правильный тюнинг ускоряет в 2-5 раз.

InnoDB tuning

innodb_buffer_pool_size — RAM-кеш InnoDB. Главный параметр. Рекомендуется 50-70% от свободного RAM. Пример: 4GB сервер, 2GB MySQL → innodb_buffer_pool_size = 2G. Данные и индексы в RAM, минимум disk I/O.

innodb_log_file_size — размер лога транзакций. 256M-1G. Больше — больше транзакций влезает, быстрее crash recovery.

innodb_flush_log_at_trx_commit — куда flush на каждой транзакции. 1 = ACID (безопасно), 2 = OS-кеш (быстрее, но при крахе OS потеря), 0 = раз в секунду (быстро). Production: 1 или 2.

Connection и thread

max_connections — макс. параллельных подключений. Default 151. По размеру 200-1000. В WordPress на пользователя 1-3 connection.

thread_cache_size — кеш thread'ов. max_connections / 4.

Query cache (старые версии)

До MySQL 5.7 был query_cache. В 8.0 убран (проблемы при многих connection). MariaDB поддерживает. Если MariaDB: query_cache_size = 64M, query_cache_type = 1.

Slow query log

slow_query_log = 1, long_query_time = 2, slow_query_log_file = /var/log/mysql-slow.log. Поиск медленных запросов. mysqldumpslow -s c -t 10 /var/log/mysql-slow.log.

Индексы и EXPLAIN

Отсутствие индексов — главная проблема скорости. EXPLAIN SELECT: type "ALL" — full scan плохо; "ref"/"eq_ref" — индекс используется. На WHERE/JOIN-колонки CREATE INDEX idx_user_email ON users(email).

Практика Sayt.uz

Тюнинг MySQL/MariaDB делает наш DBA. WordPress: innodb_buffer_pool_size 256M (Basic), 512M-1G (Pro). У Pro slow_query_log включён, мы анализируем еженедельно. В e-commerce — аудиты каждые 2-3 месяца. Совет: индексы — 80% скорости, остальное 20%. Сначала структура и индексы.

Похожие статьи

💰 Сравнение цен на хостинг: узбекские и международные провайдеры 📡 Инструменты мониторинга сервера: Prometheus, Grafana, Datadog 🌐 Edge computing хостинг: вычисления ближе к пользователю 🏢 Colocation сервер: ваш hardware в data center
🌐 Язык
🇺🇿 O'zbek 🇺🇿 Ўзбек 🇷🇺 Русский 🇬🇧 English