Det viser sig, at du bør give eksplicit ejerskab af alle objekter i databasen til ejeren efter gendannelse. Ejeren er ikke en superbruger. Det er ikke nok kun at indstille ejeren på tidspunktet for oprettelse af databasen. Den endelige løsning til migrering ser sådan ud:
på klienten:
pg_dump -f dump.sql -Ox database
på serveren:
su postgres
dropdb database
createdb database -O user
psql database -f dump.sql
og derefter for at indstille privilegierne:
psql database -c "GRANT ALL ON ALL TABLES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL SEQUENCES IN SCHEMA public to user;"
psql database -c "GRANT ALL ON ALL FUNCTIONS IN SCHEMA public to user;"
Bemærk, at vi kunne have kørt kommandoen sql i psql-konsollen, men denne formular kan nemt integreres i scripts og sådan.