Maison > développement back-end > tutoriel php > Comment effacer les connexions mortes MySQL basées sur PHP

Comment effacer les connexions mortes MySQL basées sur PHP

墨辰丷
Libérer: 2023-03-29 09:34:01
original
1597 Les gens l'ont consulté

Cet article présente principalement la méthode de suppression des connexions mortes MySQL en PHP. Il implémente la fonction de vérification et de suppression des liens morts MySQL en exécutant régulièrement des scripts PHP. Les amis dans le besoin peuvent se référer à la situation de connexion

. Le principal symptôme est qu'il y a trop de connexions en veille et que le temps est très long, occupant toutes les connexions disponibles, de sorte que les autres utilisateurs ne peuvent plus se connecter à la base de données. J'ai commencé à envisager d'ajuster les paramètres de la base de données MySQL, mais j'ai modifié de nombreux paramètres et je n'ai toujours pas résolu le problème. J'ai donc pensé à une manière plus impitoyable d'écrire un script php et de l'exécuter toutes les 2 minutes. Si une connexion morte est trouvée (plus de 120 secondes), tuez-la. De cette façon, certains programmes ne tueront plus le serveur de base de données. Ce qui suit est le programme Kill Small pour une connexion morte :

kill-mysql-sleep-proc.php :

define('MAX_SLEEP_TIME',120);
$hostname="localhost";
$username="root";
$password="password";
$connect=mysql_connect($hostname,$username,$password);
$result=mysql_query("SHOWPROCESSLIST",$connect);
while($proc=mysql_fetch_assoc($result)){
if($proc["Command"]=="Sleep"&&$proc["Time"]>MAX_SLEEP_TIME){
@mysql_query("KILL".$proc["Id"],$connect);
}
}
mysql_close($connect);
?>
Copier après la connexion

Remplacez $password par le mot de passe réel de votre base de données et l'heure de la connexion morte sera également Peut être modifié. Ensuite, ajoutez simplement la tâche planifiée. Par exemple, utilisez la commande crontab-e pour ajouter :

*/2****php/usr/local/sbin/kill-mysql-sleep-proc.php
Copier après la connexion

pour vérifier et effacer les connexions mortes dans la base de données toutes les 2 minutes

Résumé : ce qui précède représente l'intégralité du contenu de cet article J'espère que cela sera utile à l'étude de chacun.

Recommandations associées :

Explication détaillée du cas de la fonction curl_setopt() de la méthode CURL de PHP

Explication détaillée de la date et de l'horodatage de correspondance régulière de PHP cas de conversion

php Explication détaillée des exemples d'opérateurs ternaires

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal