Estou tentando restaurar um banco de dados de um esquema para outro esquema no PostgreSQL usando o utilitário de backup e restauração pgadmin. O backup é bem sucedido para o banco de dados A, mas quando tento fazer a restauração deste para outro banco de dados BI, recebo o seguinte erro:
Amostra:
pg_restore: creating TABLE "public.app_role"
pg_restore: [archiver (db)] Error from TOC entry 227; 1259 197811 TABLE app_role schedule
pg_restore: [archiver (db)] could not execute query: ERROR: role "schedule" does not exist
Command was: ALTER TABLE public.app_role OWNER TO schedule;
Tentei alterar as opções de restauração, como não salvar o proprietário como sim, privilégios sim, etc., mas ainda não tive sorte.
Alguém sabe sobre isso ou já enfrentou um problema como esse antes?
Você precisa das funções mencionadas no backup. Para obtê-los, faça o seguinte:
Em seguida, você pode fazer
pg_restore -f globals.dump <database>
o dump de todas as funções no cluster de banco de dados de origem.Se você não conseguir fazer isso por qualquer motivo, também poderá editar seu arquivo de backup para obter referências a essa
schedule
função para outra que você configurou em seu sistema de destino