GNU/Linux >> Tutoriels Linux >  >> Linux

Traquer les fuites de connexion MySQL

La réponse semble être d'ajouter les entrées suivantes dans my.cnf sous [mysqld] :

wait_timeout=60
interactive_timeout=60

Je l'ai trouvé ici (tout en bas) :http://community.livejournal.com/mysql/82879.html

Le temps d'attente par défaut pour couper une connexion obsolète est de 22 800 secondes. Pour vérifier :

mysql> show variables like 'wait_%';
+---------------+-------+
| Variable_name | Value |
+---------------+-------+
| wait_timeout  | 60    |
+---------------+-------+

EDIT :j'ai oublié de mentionner, j'ai également ajouté ce qui suit à mon /etc/sysctl.conf :

net.ipv4.tcp_fin_timeout = 15

Ceci est censé aider à réduire le seuil que le système d'exploitation attend avant de réutiliser les ressources de connexion.

EDIT 2 :/etc/init.d/mysql reload ne rechargera pas vraiment votre my.cnf (voir le lien ci-dessous)


Il est possible que le ou les pools de connexions soient mal configurés pour conserver trop de connexions et qu'ils conservent trop de processus inactifs.

En dehors de cela, tout ce à quoi je peux penser, c'est qu'un morceau de code conserve un ensemble de résultats, mais cela semble moins probable. Pour détecter s'il s'agit d'une requête lente qui expire, vous pouvez également configurer MySQL pour qu'il écrive dans un journal des requêtes lentes dans le fichier conf, et il écrira alors toutes les requêtes qui prennent plus de X secondes, la valeur par défaut est de 10 secondes.


Linux
  1. Installer MariaDB ou MySQL sur Linux

  2. Paramètres de connexion pour les bases de données MySQL

  3. Modifier le délai d'attente MySQL sur un serveur

  4. Configurer la réplication source-source MySQL

  5. Sauvegarde MySQL 1.1

Créer une base de données et une table MySQL à l'aide de PHP dans XAMPP

Traquer où est passé l'espace disque sous Linux ?

Comment autoriser la connexion à distance au serveur MySQL dans cPanel/WHM Server ?

Comment configurer une connexion MySQL distante sécurisée

MySQL à distance dans cPanel

Qu'est-ce que MySQL vs MariaDB vs Percona