MySQL - Тюнинг thread cache size - кеш тредов клиента при его отключении
Материал из Wiki - Iphoster - the best ever hosting and support. 2005 - 2024
MySQL - Тюнинг thread cache size - кеш тредов клиента при его отключении
Посмотреть текущие значения
1) Threads_cached - количество трэдов в кеше 2) Threads_connected - количество открытых подключений 3) Threads_running - Сколько тредов сейчас "запущено" 3) Threads_created - Сколько тредов было создано со старта сервера Если в кеше нет свободного треда, то он создается. Если кеша нет вообще, то при каждом подключении создается тред. А при отключении убивается. Тоже самое происходит, если кеш тредов слишком маленький. Короче. Если это значение у вас измеряется тысячами, то у вас не все впорядке. Оно должно быть чуть больше Threads_cached в идеальном случае.
можно командами:
# mysqladmin extended-status | grep Threads | Threads_cached | 6 | | Threads_connected | 3 | | Threads_created | 71393 | | Threads_running | 1 |
или через
mysql > SHOW GLOBAL VARIABLES LIKE 'thread_cache_size'; mysql > SHOW VARIABLES LIKE 'thread_cache_size'; mysql > SHOW GLOBAL STATUS LIKE 'Threads_%';
Если Threads_created на тысячи больше чем Threads_cached, то нужно увеличивать thread_cache_size от 32 до 100, пока значения примерно не сравняются.
Слишком высокое значение thread_cache может необоснованно кушать лишнюю память.
# vi /etc/my.cnf [mysqld] thread_cache_size = 32 # systemctl restart mysql
Узнать количество подключений в пиковых нагрузках:
# echo "SHOW GLOBAL STATUS" | mysql | grep Threads_connected | awk '{print $2;}'