Le message d'erreur que vous avez n'est pas une raison pour redémarrer la base de données ; ce n'est pas un problème de base de données. Votre application contient trop de connexions, probablement parce que vous avez oublié de configurer son pool de connexions. Ce n'est pas un problème de serveur de base de données et vous pouvez le résoudre sans redémarrer le serveur de base de données.
Si vous arrêtez votre application Play ou reconfigurez son pool de connexion, le problème disparaîtra.
Une autre option consiste à mettre votre instance Heroku en mode maintenance, puis à la retirer.
Depuis heroku ne vous permet pas de vous connecter en tant que superutilisateur (pour de bonnes raisons) vous ne pouvez pas utiliser cet emplacement de superutilisateur réservé pour vous connecter et gérer les connexions comme vous le feriez avec PostgreSQL normal.
Voir aussi :
http://wiki.postgresql.org/wiki/Number_Of_Database_Connections
Si vous n'êtes pas un utilisateur heroku et que vous avez trouvé ceci :
Avec PostgreSQL normal, vous pouvez déconnecter votre client du serveur en utilisant une connexion PostgreSQL à votre serveur. Voyez-vous comment il est indiqué qu'il y a un emplacement réservé aux "connexions superutilisateurs" ? Connectez-vous à Pg en tant que superutilisateur (postgres
utilisateur par défaut) en utilisant PgAdmin-III ou psql
.
Une fois connecté, vous pouvez voir d'autres clients avec :
SELECT * FROM pg_stat_activity;
Si vous souhaitez mettre fin à toutes les connexions sauf la vôtre, vous pouvez exécuter :
SELECT procpid, pg_terminate_backend(procpid)
FROM pg_stat_activity WHERE procpid <> pg_backend_pid();
Ajoutez AND datname = current_database
et/ou AND usename = <target-user-name>
le cas échéant.