Image

Base de connaissances → Erreur SQLSTATE[08004] [1040] Too many connections error

[Serveurs virtuels] [Applications sur VPS/VDS]
Date de publication: 07.02.2025

L'erreur indique que le nombre de connexions disponibles pour le serveur de base de données MariaDB a été épuisé. Pour résoudre ce problème, vous devez augmenter le nombre de connexions autorisées à la base de données.

Pour ce faire, ajoutez ou modifiez la directive suivante dans le fichier :

/etc/mysql/my.cnf

Ajoutez-la dans la section [mysqld] :

[mysqld]
max_connections = 800

Pour que les modifications prennent effet, redémarrez le service avec la commande suivante :

service mariadb restart

Note : Si plusieurs utilisateurs différents se connectent à la base de données, vous devez également définir une limite de connexions par utilisateur. Cela évitera une interruption de la base de données si un utilisateur dépasse la limite de connexions.

En général, une limite de 50 connexions par utilisateur est largement suffisante. Si cette limite est dépassée pour une raison quelconque, il convient de rechercher des erreurs dans le script, comme une exécution lente des requêtes.

Dans ce cas, le message d'erreur sera différent :
SQLSTATE[HY000] [1203] User someuser already has more than 'max_user_connections' active connections

Pour éviter de dépasser la limite générale de connexions, ajoutez la ligne suivante dans le même fichier :

[mysqld]
max_connections = 800
max_user_connections = 50

Après avoir effectué ces modifications, redémarrez le service :

service mariadb restart

C'est terminé.





Aucun commentaire pour l'instant