Thread: How to change table owner?

How to change table owner?

From
Anders Bogdan
Date:
Greetings!

Sort of a newbie-ish question, I haven't seen it in the archives so
thought I'd ask.
I've created and deployed a number of databases and am now getting
around to adding some table maintenance (a vacuum script). But, the
script can't run as the "postgres" user. It runs as a defined db user
"admin".. Unfortunately, in my db schema the tables are owned by
postgres and my script doesn't have permission to vacuum.  ( I've since
changed the schema so this won't happen in the future)
I need to change owner of the tables from postgres to admin... Granting
all to admin apparently isn't enough. Is there are simple way to change
table owner short of dumping, editing the dump and restoring?
redhat7.2
postgresql7.1/7.2

Thanks
Anders


Re: How to change table owner?

From
Tom Lane
Date:
Anders Bogdan <anders@theworks.org> writes:
> I've created and deployed a number of databases and am now getting
> around to adding some table maintenance (a vacuum script). But, the
> script can't run as the "postgres" user. It runs as a defined db user
> "admin".. Unfortunately, in my db schema the tables are owned by
> postgres and my script doesn't have permission to vacuum.

Make "admin" a postgres superuser.  (I think "ALTER USER admin CREATEUSER"
is the approved way to do this.)

            regards, tom lane

Re: How to change table owner?

From
Anders Bogdan
Date:
Thankyou! That worked, much easier than dumping the db..
thanks
Anders

On Monday, December 9, 2002, at 09:35  AM, Tom Lane wrote:

> Anders Bogdan <anders@theworks.org> writes:
>> I've created and deployed a number of databases and am now getting
>> around to adding some table maintenance (a vacuum script). But, the
>> script can't run as the "postgres" user. It runs as a defined db user
>> "admin".. Unfortunately, in my db schema the tables are owned by
>> postgres and my script doesn't have permission to vacuum.
>
> Make "admin" a postgres superuser.  (I think "ALTER USER admin
> CREATEUSER"
> is the approved way to do this.)