Thread: close connection
I need to close all connections from one database and keep all connection from the other databases in my postgresql server. Can some body help me?
Freddy Expósito Moreno wrote: > I need to close all connections from one database and keep all > connection from the other databases in my postgresql server. > > Can some body help me? Hello Freddy This could be a solution, but probably not a good/the best one: 1.) Mark out the database in pg_hba.conf, e.g. # TYPE DATABASE USER IP-ADDRESS IP-MASK METHOD local T740A all reject local all all trust 2.) Reload the cluster pg_ctl reload -D $PG_DATA or pg_reload CLUSTER1 # with pg_env Now no more new connections are possible 3.) Kill all processes which are related to your db postgres@master:/u00/app/pgsql - rdbms740/template0> ps -fu postgres | grep T740A postgres 28375 27864 1 09:16 pts/1 00:00:00 postgres: postgres T740A [local] idle ps -fu postgres | grep T740A | grep -v grep | cut -d" " -f2 | \ while read pid ; do kill ${pid} 2>/dev/null done Regards Oli ------------------------------------------------------- Oli Sennhauser Database-Engineer (Oracle & PostgreSQL) Rebenweg 6 CH - 8610 Uster / Switzerland Phone (+41) 1 940 24 82 or Mobile (+41) 79 450 49 14 e-Mail oli.sennhauser@bluewin.ch Website http://mypage.bluewin.ch/shinguz/PostgreSQL/ Secure (signed/encrypted) e-Mail with a Free Personal SwissSign ID: http://www.swisssign.ch Import the SwissSign Root Certificate: http://swisssign.net/cgi-bin/trust/import
Attachment
This is a good idea if I want to reject the access to this database every time but in my case I need to close de access to one database one time and could be any database in any moment. A need a dynamic solution. Thanks any way Oli Oli Sennhauser wrote: > Freddy Expósito Moreno wrote: > >> I need to close all connections from one database and keep all >> connection from the other databases in my postgresql server. >> >> Can some body help me? > > > Hello Freddy > > This could be a solution, but probably not a good/the best one: > > 1.) Mark out the database in pg_hba.conf, e.g. > > # TYPE DATABASE USER IP-ADDRESS IP-MASK > METHOD > local T740A all > reject > local all all trust > > 2.) Reload the cluster > > pg_ctl reload -D $PG_DATA > > or > > pg_reload CLUSTER1 # with pg_env > > Now no more new connections are possible > > 3.) Kill all processes which are related to your db > > postgres@master:/u00/app/pgsql - rdbms740/template0> ps -fu postgres | > grep T740A > postgres 28375 27864 1 09:16 pts/1 00:00:00 postgres: postgres > T740A [local] idle > > ps -fu postgres | grep T740A | grep -v grep | cut -d" " -f2 | \ > while read pid ; do > kill ${pid} 2>/dev/null > done > > Regards Oli > > ------------------------------------------------------- > > Oli Sennhauser > Database-Engineer (Oracle & PostgreSQL) > Rebenweg 6 > CH - 8610 Uster / Switzerland > > Phone (+41) 1 940 24 82 or Mobile (+41) 79 450 49 14 > e-Mail oli.sennhauser@bluewin.ch > Website http://mypage.bluewin.ch/shinguz/PostgreSQL/ > > Secure (signed/encrypted) e-Mail with a Free Personal SwissSign ID: > http://www.swisssign.ch > > Import the SwissSign Root Certificate: > http://swisssign.net/cgi-bin/trust/import >
=?ISO-8859-1?Q?Freddy_Exp=F3sito_Moreno?= <fredo@uh.cu> writes: > This is a good idea if I want to reject the access to this database > every time but in my case I need to close de access to one database > one time and could be any database in any moment. A need a dynamic solution. If you are really insistent on doing that, you'll need to set up a separate installation (separate postmaster) for each database. regards, tom lane