Ukázalo se, že po obnovení byste měli udělit explicitní vlastnictví všech objektů v databázi vlastníkovi. Majitel není superuživatel. Nestačí pouze nastavit vlastníka při vytváření databáze. Konečné řešení migrace vypadá takto:
na klientovi:
pg_dump -f dump.sql -Ox database
na serveru:
su postgres
dropdb database
createdb database -O user
psql database -f dump.sql
a poté pro nastavení oprávnění:
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;"
Všimněte si, že jsme mohli spustit příkaz sql v konzole psql, ale tento formulář lze snadno vložit do skriptů a podobně.