Felmeddelandet du har där finns ingen anledning att starta om databasen; det är inte ett databasproblem. Din applikation har för många anslutningar, förmodligen för att du har glömt att konfigurera dess anslutningspool. Det är inte ett DB-serverproblem och du kan fixa det utan att starta om DB-servern.
Om du stoppar din Play-applikation eller omkonfigurerar dess anslutningspool kommer problemet att försvinna.
Ett annat alternativ är att sätta din Heroku-instans i underhållsläge och sedan ta ut den igen.
Eftersom heroku inte tillåter dig att ansluta som superanvändare (av goda skäl) kan du inte använda den reserverade superanvändarplatsen för att ansluta och hantera anslutningar som du skulle göra med vanlig PostgreSQL.
Se även:
http://wiki.postgresql.org/wiki/Number_Of_Database_Connections
Om du är en icke-heroku-användare som hittade detta:
Med normal PostgreSQL kan du koppla bort din klient från serveränden med en PostgreSQL-anslutning till din server. Se hur det står att det finns en plats reserverad för "superanvändaranslutningar"? Anslut till Pg som en superanvändare (postgres
användare som standard) med PgAdmin-III eller psql
.
När du är ansluten kan du se andra klienter med:
SELECT * FROM pg_stat_activity;
Om du vill avsluta alla anslutningar utom din egen kan du köra:
SELECT procpid, pg_terminate_backend(procpid)
FROM pg_stat_activity WHERE procpid <> pg_backend_pid();
Lägg till AND datname =current_database
och/eller OCH användarnamn =