sql >> Database >  >> RDS >> PostgreSQL

Herstart Heroku Postgres Dev DB

De foutmelding die je krijgt is geen reden om de database opnieuw op te starten; het is geen databaseprobleem. Uw toepassing houdt te veel verbindingen vast, waarschijnlijk omdat u bent vergeten de verbindingspool in te stellen. Dat is geen DB-serverprobleem en u kunt het oplossen zonder de DB-server opnieuw op te starten.

Als u uw Play-toepassing stopt of de verbindingspool opnieuw configureert, verdwijnt het probleem.

Een andere optie is om je Heroku-instantie in de onderhoudsmodus te zetten en er vervolgens weer uit te halen.

Aangezien heroku je niet toestaat verbinding te maken als superuser (om goede redenen) je kunt dat gereserveerde superuser-slot niet gebruiken om verbindingen te maken en te beheren zoals je zou doen met normale PostgreSQL.

Zie ook:

Heroku "psql :FATAL:resterende verbindingssleuven zijn gereserveerd voor niet-replicatie-superuser-verbindingen"

http://wiki.postgresql.org/wiki/Number_Of_Database_Connections

Als je een niet-heldengebruiker bent die dit heeft gevonden:

Met normale PostgreSQL kunt u uw client loskoppelen van de serverzijde door middel van een PostgreSQL-verbinding met uw server. Zie je hoe het zegt dat er een slot is gereserveerd voor "superuser-verbindingen"? Maak verbinding met Pg als supergebruiker (postgres gebruiker standaard) met PgAdmin-III of psql .

Zodra je verbonden bent, kun je andere klanten zien met:

SELECT * FROM pg_stat_activity;

Als u elke verbinding behalve die van uzelf wilt beëindigen, kunt u het volgende uitvoeren:

SELECT procpid, pg_terminate_backend(procpid) 
FROM pg_stat_activity WHERE procpid <> pg_backend_pid();

Voeg AND datname = current_database toe en/of AND usename = <target-user-name> indien van toepassing.



  1. Vind en vervang de volledige mysql-database

  2. MySQL group_concat_max_len in een query

  3. MySQL sluit je aan bij twee tabellen, vind het maximale aantal en bestel op

  4. Kleine uitleg van deze mysql-code