Utilisez-vous des connexions persistantes? Combien de connexions de sommeil avez-vous? Quelle est la quantité maximale de connexions que votre serveur DB est configuré pour autoriser?
Pour vérifier le nombre de connexions de veille que vous venez d'exécuter:
show full processlist;
Pour voir l'exécution de max_connections:
show variables like 'max_connections';
Je pense que les connexions en veille ne sont pas le problème, mysqld va expirer les connexions en veille basées sur 2 valeurs:
interactive_timeout wait_timetout
Les deux durent 28800 secondes (8 heures) par défaut.
Vous pouvez définir ces options dans my.cnf (l'emplacement de ce fichier est différent dans différents systèmes d'exploitation et bases de données, percona, mysql, etc.)
Consultez également cette réponse des administrateurs de base de données: https://dba.stackexchange.com/a/1559 et si vous souhaitez en savoir plus sur la façon de déboguer l'origine des connexions en veille, consultez cet excellent article: https: // www. percona.com/blog/2007/02/08/debugging-sleeping-connections-with-mysql/
"Si vos connexions sont persistantes (ouvertes via mysql_pconnect), vous pouvez réduire ces nombres à quelque chose de raisonnable comme 600 (10 min) ou même 60 (1 min). Ou, si votre application fonctionne très bien, vous pouvez laisser la valeur par défaut. C'est dépend de vous."
Essayez d'exécuter l'indexeur à partir de la console pour voir s'il génère une erreur:
php shell/indexer info # this will output the list of indexes then
php shell/indexer --reindex {index_name}
configurer votre serveur mysql en définissant un délai d'expiration plus court
wait_timeout
etinteractive_timeout
mysql> afficher des variables comme
"%timeout%"
;Fixé avec:
(et également défini dans votre fichier de configuration, pour le redémarrage de votre serveur)
Mais vous traitez les symptômes plutôt que la cause sous-jacente - pourquoi les connexions sont-elles ouvertes? Si le script PHP est terminé, ne devraient-ils pas se fermer? Assurez-vous que votre serveur Web n'utilise pas le pool de connexions ...
la source