web-dev-qa-db-fra.com

Trop d'instances MySQL. Comment tuer?

Je devrais avoir honte de moi-même, pour demander, je sais.

Découvrez cette capture d'écran ci-jointe. enter image description here

Mon serveur, qui ne voit en effet pas d'énormes quantités de trafic, ne devrait pas être surchargé. MySQL a une fête et tout le monde invité. La chose est que je n'aime pas ce genre de fêtes sauvages.

Comment puis-je tuer ce genre de choses? Comment puis-je la réguler pour que cela ne continue pas? Joli bientôt mon hôte va appeler la police et la fête sera terminée pour tout le monde.

5
1Up

Ne soyez pas dupe par ce que vous voyez.

mySQLD ne sera pas plusieurs instances sur le même datadir et ibdata1. Comment puis-je le savoir?

Le 26 septembre 2014, j'ai répondu MySQL a obtenu le signal 11 error et esclave est en panne . Dans ma réponse, j'ai mentionné comment l'architecture InnoDb n'autorise qu'un processus mysqld d'ouvrir un fil maître à ibdata1.

Par conséquent, si vous ne voyez pas les lignes suivantes dans votre journal d'erreur

6 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.
2014-09-26 12:51:53 14166 [ERROR] InnoDB: Unable to lock ./ibdata1, error: 11
2014-09-26 12:51:53 14166 [Note] InnoDB: Check that you do not already have another mysqld process using the same InnoDB data or log files.

À la lumière de ces choses, je vous assure, vous n'avez pas plusieurs processus mysqld.

Quoi, alors, voyez-vous? Ce sont des connexions DB réelles émanant de l'instance MySQLD. J'ai vu cet affichage panoramique provenant de versions de mysqld compilées à la source. Je l'ai mentionné en passant dans mon ancien post-post innodb_buffer_pool_size non modifié et processus MySQL identiques (ServerFault) . Mon soupçon est que le système d'exploitation consiste à manifester des connexions de base de données comme si elles étaient des processus MySQLD. Au contraire, ce ne sont que des connexions db ordinaires.

Vous devriez exécuter ceci à Linux

ps -ef | grep mysqld | grep -v grep | wc -l

Vous devriez obtenir une sortie de 2 (1 pour mysqld et 1 pour mysqld_safe)

Si vous obtenez seulement 1, vous avez probablement une très vieille version de MySQL.

4
RolandoMySQLDBA