Em 20-09-2012 20:10, Fábio Telles Rodriguez escreveu: > Alguém sabe se é possível e como copiar tabelas fisicamente entre > diferentes clusters? > > Tenho várias tabelas particionadas e preciso mover periodicamente > partições de uma base de produção para uma base histórica. Sei que posso > mover dados com um simples dump, mas isso custa muito, muuuuito caro. > Queria saber se é possível, mexer com segurança debaixo do capô dos > datafiles e fazer este tipo de movimentação.
Certamente que não. Motivos: 1) As tabelas são nomeadas com o relfilenode que é guardado em catálogo de sistema. Não sei como você criaria esses dados em catálogo sem correr riscos. 2) Algumas informações do mapa de visibilidade sobre as transações já concluídas são guardadas em mapa de bits no diretório pg_clog que é para todo o cluster 3) As informações de transações correntes são guardadas em mapa de bits nos diretórios pg_multixact, pg_subtrans e pg_twophase, que também são para todo o cluster. Acho que você terá graves problemas se tentar algo desse tipo, linhas que já passaram por limpeza ou congelamento podem se tornar visíveis novamente, por exemplo, vide bug no pg_upgrade corrigido na versão 9.0.4 que justamente confundia isso, e eu já perdi dados por isso. Obóviamente Mr. Taveira pode ser mais claro que eu :) Não sei se tem algo no todo relativo a "tablespaces portáteis" para o PostgreSQL, mas numa conversa com o Bruce Momjian uma vez ele me explicou que muitas informações das tabelas são "cluster wide" e, portanto, um retrabalho muito grande de código paralizaria outros desenvolvimentos mais importantes. Pergunto: por que é tão caro assim fazer os dumps que você está citando? A restauração até entendo, mas o dump não deveria ser uma dor tão insuportável. []s __________________________________ Flavio Henrique A. Gurgel Líder de Projetos Especiais Consultoria, Projetos & Treinamentos 4LINUX Tel1: +55-11.2125-4747 ou 2125-4748 www.4linux.com.br email: [email protected] ______________________________ FREE SOFTWARE SOLUTIONS _______________________________________________ pgbr-geral mailing list [email protected] https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral
