sql >> Database teknologi >  >> RDS >> PostgreSQL

PostgreSQL:Deaktiver midlertidigt forbindelser

Sådan markerer du databasen 'applogs' som ikke accepterer nye forbindelser:

update pg_database set datallowconn = false where datname = 'applogs';

En anden mulighed ville være at tilbagekalde 'connect'-adgang til databasen for klientrollerne.

Afbryd brugere fra databasen =dræb backend. Så for at frakoble alle andre brugere fra "applogs"-databasen, for eksempel:

select pg_terminate_backend(procpid)
from pg_stat_activity
where datname = 'applogs' and procpid <> pg_backend_pid();

Når du har gjort begge dele, er du den eneste bruger, der er forbundet til 'applogs'. Selvom der faktisk kan være en forsinkelse, før backends rent faktisk afslutter afbrydelsen?



  1. Sammenligning af SQL, forespørgselsbyggere og ORM'er

  2. CTE for at få alle børn (efterkommere) af en forælder

  3. C# parametriserede forespørgsler til Oracle - alvorlig og farlig fejl!

  4. datetime vs datetime2 i SQL Server:Hvad er forskellen?