ALTER DATABASE and datallowconn
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
On Thu, May 3, 2012 at 1:31 PM, Magnus Hagander <magnus@hagander.net> wrote:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?
I think it can be removed, or rather deprecated.
datconnlimit can be set to 0
If we need to special case template0 then we should just do that. No
need to add a column to do it.
--
Simon Riggs http://www.2ndQuadrant.com/
PostgreSQL Development, 24x7 Support, Training & Services
On Thu, May 3, 2012 at 2:48 PM, Simon Riggs <simon@2ndquadrant.com> wrote:
On Thu, May 3, 2012 at 1:31 PM, Magnus Hagander <magnus@hagander.net> wrote:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?I think it can be removed, or rather deprecated.
datconnlimit can be set to 0
superusers bypass datconnlimit, but not datallowconn, don't they?
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
Magnus Hagander <magnus@hagander.net> writes:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?
It was never intended to be a user-accessible switch, just something to
protect template0.
I don't agree with Simon's proposal to hard-wire protection for
template0 instead; that's ugly, and sometimes you do need to be able to
turn it off. But that's something that should be done only with adult
supervision, so having a nice friendly ALTER DATABASE command for it
seems exactly the wrong thing.
regards, tom lane
On Thu, May 3, 2012 at 4:13 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Magnus Hagander <magnus@hagander.net> writes:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?It was never intended to be a user-accessible switch, just something to
protect template0.
It can be rather useful for others as well, though - since it works as
a defense against superusers doing the wrong thing..
I don't agree with Simon's proposal to hard-wire protection for
template0 instead; that's ugly, and sometimes you do need to be able to
turn it off. But that's something that should be done only with adult
supervision, so having a nice friendly ALTER DATABASE command for it
seems exactly the wrong thing.
Yeah, I agree that from the perspective of template0, it definitely
looks that way.
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/
Magnus Hagander <magnus@hagander.net> writes:
On Thu, May 3, 2012 at 4:13 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Magnus Hagander <magnus@hagander.net> writes:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?
It was never intended to be a user-accessible switch, just something to
protect template0.
It can be rather useful for others as well, though - since it works as
a defense against superusers doing the wrong thing..
I'm having a hard time seeing the use-case for a user-created database
that nobody at all can connect to. Even if there is some marginal use
for that, you could achieve the result with a special entry in
pg_hba.conf to "reject" all connection attempts for that DB.
regards, tom lane
On Thu, May 3, 2012 at 4:26 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Magnus Hagander <magnus@hagander.net> writes:
On Thu, May 3, 2012 at 4:13 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
Magnus Hagander <magnus@hagander.net> writes:
Is there a particular reason we don't have an ALTER DATABASE switch
that controls the datallowconn, or is it just something "missed out"?It was never intended to be a user-accessible switch, just something to
protect template0.It can be rather useful for others as well, though - since it works as
a defense against superusers doing the wrong thing..I'm having a hard time seeing the use-case for a user-created database
that nobody at all can connect to. Even if there is some marginal use
template databases.
for that, you could achieve the result with a special entry in
pg_hba.conf to "reject" all connection attempts for that DB.
Yeah, that would work.
--
Magnus Hagander
Me: http://www.hagander.net/
Work: http://www.redpill-linpro.com/