Подтвердить что ты не робот

Как установить максимальное количество процессов или потоков MySQL?

ps axuw| grep mysql указывает только на процесс MySQL, но если я запустил htop, я могу увидеть 10 строк, каждый из которых имеет отдельный PID. Поэтому я задаюсь вопросом, являются ли они потоками или процессами, которые по какой-то причине я не вижу с помощью ps.

Было бы разумным попытаться ограничить их двумя на моей машине разработки, где мне не нужен одновременный доступ многих клиентов.

BTW Запуск на Ubuntu 8.10

4b9b3361

Ответ 1

Вы можете установить максимальное количество потоков в my.ini следующим образом:

max_connections=2

Однако вы также можете установить это:

thread_cache_size=1

Кэш потоков контролирует, сколько он держит открытым, даже когда ничего не происходит.

Ответ 2

MySQL использует потоки, ps может видеть их, если вы запустите ps -eLf.

Тем не менее, я бы не стал беспокоиться об этом - бездействующие потоки практически не имеют ресурсов, и если вы слишком сильно ограничиваете сервер, он обязан вернуться и укусить вас на оборотной стороне когда-нибудь позже, когда вы забыли, что вы сделал это.

Ответ 3

В /etc/mysql/my.cnf имеется несколько настроек конфигурации, которые влияют на использование памяти. Следующие настройки: key_buffer = 8M max_connections = 30 query_cache_size = 8M query_cache_limit = 512K thread_stack = 128K должен резко сократить использование памяти mysql.

читайте больше здесь: http://opensourcehacker.com/2011/03/31/reducing-mysql-memory-usage-on-ubuntu-debian-linux/

Ответ 4

Я искал файлы конфигурации MySQL, тогда я увидел этот вопрос... Ничего общего с MySQL, я прав?

Если основной целью является просмотр результата пользовательской команды, вы можете использовать "смотреть" со следующим синтаксисом (доступным для большинства Linux-систем):

watch "ps axuw| grep mysql"

Он будет запускать команду каждые 2 секунды и отображать вывод, это очень полезная команда.

- > Обратитесь к документу/человеку, чтобы узнать, насколько он силен;)