Производительность MySQL - mysqltuner
На двух серверах базы данных MySQL (с двух разных сайтов) я запустил mysqltuner (у нас есть тайм-аут на веб-сервере, но мы на самом деле не знаем, откуда он в данный момент)
Вот оптимизация, чтобы дать совет от mysqltuner, база данных работает на машине с 4vcpu и 15 ГБ оперативной памяти (сервер Ubuntu 16.04).
Рекомендации mysqltuner:
db01 PROD
Переменные для настройки:
query_cache_type (= 1)
join_buffer_size (> 256.0K, always use indexes with joins)
table_open_cache (> 431)
innodb_buffer_pool_size (> = 1G) if possible.
db02 PROD:
Переменные для настройки:
max_connections (> 151)
wait_timeout (<28800)
interactive_timeout (<28800)
query_cache_type (= 1)
sort_buffer_size (> 256K)
read_rnd_buffer_size (> 256K)
join_buffer_size (> 256.0K, always use indexes with joins)
table_open_cache (> 431)
innodb_buffer_pool_size (> = 2G) if possible.
Я хочу услышать ваше мнение и особенно понять эти параметры (я немного начал работать с MySQL ^^).
1 ответ
Высокая загрузка процессора -> найти медленные запросы; иметь дело с индексом (ами) и / или формулировкой запросов.
Высокий I/O -> То же самое.
Высокие тайм-ауты ЦП или В / В и / или запроса -> Включить медленный журнал; это поймает это. (Лучше иметь long_query_time = 1
.)
Больше данных чем RAM -> проверка innodb_buffer_pool_size
"Слишком много связей" -> различные возможные причины
Ни один из вышеперечисленных? -> Не волнуйся (пока).