Patch: forcing object owner in TOC file

From: Piotr Gasidło <quaker(at)barbara(dot)eu(dot)org>
To: pgsql-hackers(at)postgresql(dot)org
Subject: Patch: forcing object owner in TOC file
Date: 2012-10-15 11:59:34
Message-ID: CAF8akQs30LDagtWf604pyk1RNd=k61fjn1xRTe4+JGrZ7XrAAw@mail.gmail.com
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-hackers

Hello,

I've created small patch which allows me easily change owner during
pg_restore with backup in custom format (-Fc).
This simplifies migration when users on new server are different that
ones in backup file.

First, I get TOC file:

pg_restore -Fc -l mybackup.custom > mybackup.toc

Then, I can alter owner of any object by adding username after TOC Id,
for ex. changing this:

173; 1259 25139 TABLE public data quaker

into this:

173 quaker1; 1259 25139 TABLE public data quaker

By above line I forced quaker1 to be owner of public.data table after restore.

Then I do normal restore using modified TOC:

$ pg_restore -Fc mybackup.custom -L mybackup.toc -d quaker
pg_restore: [archiver] WARNING: altering owner for TABLE data to quaker1

and have public.data TABLE owned by quaker1 user.

Patch attached.

--
Piotr Gasidło

Attachment Content-Type Size
forced-owner-v1.patch application/octet-stream 1.3 KB

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Pavel Stehule 2012-10-15 12:16:25 Re: proposal - assign result of query to psql variable
Previous Message Noah Misch 2012-10-15 11:53:51 Re: Visual Studio 2012 RC