Esta aplicação em Node.JS, tem o objetivo de comparar dois bancos de dados postgres, onde a estrutura de metadados já estejam exatamente iguais. Ou seja, o diff é apenas para registros de um banco para outro.
Ao final, a aplicação apresenta um arquivo .sql
, com todos os inserts e updates necessários para compatibilização dos bancos.
É necessário instalar as dependencias via yarn:
-
Clone o repositório.
-
Copie o arquivo
.env.sample
para.env
. -
Configure o arquivo
.env
com as URLs de conexão com as duas bases postgres e o nome do arquivo.sql
que será gerado
DATABASE_OFFICIAL_URL=postgres://postgres:postgres@localhost:15432/db-official
DATABASE_INTEGRATION_URL=postgres://postgres:postgres@localhost:15432/db-integration
OUTPUT_SCRIPT_FILE=./diff.sql
- Rode a aplicação e acompanhe o diff através dos logs
yarn start
O Arquivo gerado não leva em consideração a ordem em que os registros devem ser inseridos ou atualizados no banco de dados, por esse motivo, é necessário desativar as FK's do banco de dados onde será executado o script