A mensagem de erro que você tem não é motivo para reiniciar o banco de dados; não é um problema de banco de dados. Seu aplicativo está mantendo muitas conexões, provavelmente porque você esqueceu de configurar o pool de conexões. Isso não é um problema do servidor de banco de dados e você pode corrigi-lo sem reiniciar o servidor de banco de dados.
Se você interromper seu aplicativo Play ou reconfigurar seu pool de conexões, o problema desaparecerá.
Outra opção é colocar sua instância Heroku no modo de manutenção e retirá-la novamente.
Como heroku não permite que você se conecte como superusuário (por boas razões) você não pode usar esse slot de superusuário reservado para conectar e gerenciar conexões como faria com o PostgreSQL normal.
Veja também:
Heroku "psql :FATAL:os slots de conexão restantes são reservados para conexões de superusuário sem replicação"
http://wiki.postgresql.org/wiki/Number_Of_Database_Connections
Se você não é um usuário do Heroku que encontrou isto:
Com o PostgreSQL normal você pode desconectar seu cliente do servidor usando uma conexão PostgreSQL ao seu servidor. Veja como diz que há um slot reservado para "conexões de superusuário"? Conecte-se ao Pg como um superusuário (
postgres
usuário por padrão) usando PgAdmin-III ou psql
. Quando estiver conectado, você poderá ver outros clientes com:
SELECT * FROM pg_stat_activity;
Se você deseja encerrar todas as conexões, exceto a sua, você pode executar:
SELECT procpid, pg_terminate_backend(procpid)
FROM pg_stat_activity WHERE procpid <> pg_backend_pid();
Adicione
AND datname = current_database
e/ou AND usename = <target-user-name>
como apropriado.