web-dev-qa-db-fra.com

Comment puis-je définir le nombre maximum de processus ou de threads MySQL?

ps axuw| grep mysql indique uniquement le processus MySQL, mais si j'exécute htop, je peux voir 10 lignes chacune d'elles avec un PID séparé. Je me demande donc s'il s'agit de threads ou de processus que, pour une raison quelconque, je ne vois pas en utilisant ps.

Cela aurait-il un sens d'essayer de les limiter à deux sur ma machine de développement, où je n'ai pas besoin d'un accès simultané de nombreux clients.

BTW fonctionnant sur Ubuntu 8.10

25
szabgab

Vous pouvez définir le nombre maximum de threads dans votre my.ini comme ceci:

max_connections=2

Cependant, vous pouvez également définir ceci:

thread_cache_size=1

Le cache de thread contrôle combien il reste ouvert même lorsque rien ne se passe.

25
Greg

MySQL utilise des threads, ps peut les voir si vous exécutez ps -eLf.

Cela dit, je ne m'en soucierais pas - les threads dormants n'utilisent presque aucune ressource, et si vous contraignez trop le serveur, il reviendra et vous mordra à l'arrière quelque temps plus tard, lorsque vous aurez oublié que vous l'avez fait.

7
Alnitak

Il y a peu de paramètres de configuration dans /etc/mysql/my.cnf qui aurait un impact sur l'utilisation de la mémoire. Paramètres suivants: key_buffer = 8M max_connections = 30 query_cache_size = 8M query_cache_limit = 512K thread_stack = 128K devrait réduire considérablement l'utilisation de la mémoire de mysql.

en savoir plus ici: http://opensourcehacker.com/2011/03/31/reducing-mysql-memory-usage-on-ubuntu-debian-linux/

5
jobwat

Je cherchais des trucs de configuration MySQL, puis j'ai vu cette question ... Rien à voir avec MySQL, n'est-ce pas?

Si l'objectif principal est de voir le résultat d'une commande personnalisée, vous pouvez utiliser "watch" avec la syntaxe suivante (disponible sur la plupart des systèmes Linux):

watch "ps axuw| grep mysql"

Il exécutera la commande toutes les 2 secondes et affichera la sortie, c'est une commande très très utile.

-> Voir le doc/man pour voir à quel point c'est puissant;)

2
Benj