Maison > base de données > tutoriel mysql > Pourquoi est-ce que j'obtiens « org.postgresql.util.PSQLException : FATAL : désolé, trop de clients déjà » dans PostgreSQL ?

Pourquoi est-ce que j'obtiens « org.postgresql.util.PSQLException : FATAL : désolé, trop de clients déjà » dans PostgreSQL ?

Barbara Streisand
Libérer: 2024-12-30 15:47:09
original
647 Les gens l'ont consulté

Why Am I Getting

Comprendre l'erreur "org.postgresql.util.PSQLException : FATAL : désolé, trop de clients déjà"

Lors de la connexion à une base de données PostgreSQL, rencontrer l'erreur "org .postgresql.util.PSQLException : FATAL : désolé, trop de clients déjà » indique que la limite autorisée de connexions simultanées a été dépassé.

Cela se produit lorsque le code ouvre plusieurs connexions à la base de données sans les fermer correctement. Bien que la destruction et le garbage collection d'une classe libèrent normalement son emprise sur une connexion, il est essentiel de fermer explicitement les connexions à la base de données.

Un exemple de correctif consiste à ajouter le code suivant dans n'importe quelle classe qui crée une connexion :

protected void finalize() throws Throwable  
{  
    try { your_connection.close(); } 
    catch (SQLException e) { 
        e.printStackTrace();
    }
    super.finalize();  
}
Copier après la connexion

Cela garantit que la connexion est libérée lorsque la classe est récupérée.

Il est également utile de vérifier le nombre maximum de connexions autorisées par PostgreSQL :

show max_connections;
Copier après la connexion

La valeur par défaut est 100. Si vous avez besoin de plus de connexions, vous pouvez augmenter cette valeur en éditant le fichier postgresql.conf. Recherchez "max_connections" et ajustez-le en conséquence.

Pour déterminer quelles connexions sont maintenues ouvertes ou quels programmes ne les libèrent pas, vous pouvez utiliser les commandes suivantes :

SELECT * FROM pg_stat_activity;
Copier après la connexion
SELECT COUNT(*) from pg_stat_activity;
Copier après la connexion

Enfin, pensez à suivre les connexions qui se créent et à vous assurer qu'elles sont toutes correctement fermées.

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!

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
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal