Necessita de ferramenta para extrair o diagrama ER do PostgreSQL 9,1

1

Pessoal, preciso comparar dois bancos de dados diferentes em execução no PostgreSQL. Eu gostaria de usar alguma ferramenta para extrair o diagrama de forma automática, eu tentei pgadmin3 e pgdesigner, mas eles parecem incompatíveis com o postgre que estou usando. Qual ferramenta posso usar para fazer isso?

Editar 1: Por incompatível, quero dizer que eles não podem nem abrir os bancos de dados que tenho, pois são novos demais.

Edite 2: Eu posso abrir ambos os dumps, versão antiga e nova, na verdade eu tenho eles em formato .sql Eu acho que ambas as ferramentas que você forneceu irão fazer o truque. Vou testá-los no trabalho amanhã e atualizarei aqui. Muito obrigado.

    
por vfbsilva 21.08.2013 / 23:57

1 resposta

1

Se você não conseguir nem "abrir" os bancos de dados, não poderá compará-los. Existem ferramentas que funcionam nos dumps, mas elas precisam que os dumps estejam no formato esperado, e a maneira mais fácil de fazer isso é carregar o servidor e fazer um dump.

Você deve primeiro poder iniciar um servidor de banco de dados para cada banco de dados. A única maneira de ler um banco de dados PostgreSQL é através de um servidor de banco de dados PostgreSQL.

Não está claro em que formato os bancos de dados estão, você não especificou isso.

Se eles são lixões, basta instalar um PostgreSQL novo o suficiente para os lixões e restaurá-los para a nova instalação. Use uma máquina separada ou apenas instale a nova Pg ao lado da antiga. Você não mencionou sua plataforma, SO / versão, etc, então não posso ajudar mais lá.

Se eles são cópias do diretório de dados do PostgreSQL e foram tiradas corretamente de um servidor parado, você deve obter a versão mesmo (não mais recente, não mais antiga) no mesmo SO e arquitetura e inicie um servidor a partir do banco de dados. Portanto, se o banco de dados for do (digamos) Windows PostgreSQL 9.2 de 32 bits, você precisará do PostgreSQL 9.2 de 32 bits no Windows para carregar o banco de dados, nada mais fará. Inicie o servidor com pg_ctl .

Depois de se conectar a ambos os servidores, você está em condições de usar as ferramentas existentes para comparar os dois bancos de dados. Quando se trata de mapear a estrutura do banco de dados, eu acho o SchemaSpy bastante útil. Para comparação, considere apgdiff ; isso funcionará nos dumps, mas exige que os dumps estejam no formato correto.

    
por 22.08.2013 / 02:01