Olá Anselmo M. Silva,
O método usado para transferir as tabelas por você (pg_dump,pg_restore) é o
mais eficiente em todos os sentidos, mesmo entre bases contidas no mesmo
"servidor". Tenho certeza que a comunidade irá indicar o mesmo para você.


Em 18 de outubro de 2013 12:00, Anselmo Silva <[email protected]>escreveu:

> Olá pessoal,
> estive com um pepino recentemente e gostaria de compartilhar meus
> resultados ao tempo em
> que estou aberto a sugestões de melhoramento da técnica usada.
>
> Estava com um script para migração de tabelas de uma base com um só Schema
> para outra de
> mesma situação, porém com tabelas de estruturas distintas.
> Em primeira instância passei com o dblink e o desempenho foi sofrível.
> para executar um insert de uma tabela com aprox 74.000 linhas levaria umas
> 36 horas estimadas.
> Então tive a idéia de usar múltiplos Schemas na mesma base, restaurando a
> base origem com um nome de Schema diferente, já que há tabelas com nomes
> iguais em ambas as bases.
> Penei 'googleando' para encontrar alguém que tivesse conseguido restaurar
> uma base num schema específico.
> encontrei até este tópico:
> http://listas.postgresql.org.br/pipermail/pgbr-geral/2010-April/020637.html
> mas, não tive sucesso pelo método de informar no restore o parâmetro
> --schema, pois recebia a seguinte mensagem: *pg_restore: restauração do
> tipo somente dados implícita *
>
> Então testei o seguinte:
> 1 - Fiz um dump na base origem;
> 2 - Renomeei o schema base alvo para um nome diferente de public
> 3 - fiz o restore do dump da base origem
>
> e voilá!
>
> O tempo estimado é de uma hora e 6 min
>
> Meu cenário:
> O.S: Windows 7 ultimate;
> postgresql 9.2
> Disco: SSD Kingston 128GB
>
> Se alguém tiver idéia melhor, manda!
>
> --
> Anselmo M. Silva
>
> _______________________________________________
> pgbr-geral mailing list
> [email protected]
> https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
>
>
_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a