Résiliation des connexions MySQL inactives
Il est courant d'observer de nombreuses connexions MySQL rester inactives pendant de longues périodes. Cela peut soulever des questions sur la façon de mettre fin ou de fermer de telles connexions à partir du serveur, sans avoir recours au redémarrage du service.
Résiliation manuelle
Une approche consiste à mettre fin manuellement à l'inactivité. connexions à l’aide de la commande KILL. Pour identifier l'ID de processus pour la connexion inactive, exécutez la requête suivante :
mysql> show full processlist;
Une fois l'ID de processus connu, il peut être terminé avec :
mysql> kill [process_id];
Cependant, cette méthode a des limites :
Gestion automatique des connexions
Alternativement, la configuration des paramètres de délai d'attente de MySQL peut gérer automatiquement la fin des connexions inactives. En réduisant les valeurs wait_timeout et interactive_timeout, MySQL fermera automatiquement les connexions qui restent inactives pendant une durée spécifiée. Pour ajuster ces paramètres, exécutez les commandes suivantes :
mysql> show variables like "%timeout%"; mysql> set global wait_timeout=[new timeout value]; mysql> set global interactive_timeout=[new timeout value];
Il est important de noter que même si cette approche traite le symptôme des connexions inactives, elle ne résout pas la cause sous-jacente. Il est recommandé d'étudier pourquoi les connexions restent ouvertes et de déterminer si le pool de connexions est utilisé par le serveur Web.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!