Esta página descreve como confirmar se os dados migrados estão completos e corretos. No mínimo, deve executar declarações SQL para verificar se as tabelas existem na base de dados do Cloud SQL migrada. Para uma comparação de dados mais precisa entre a base de dados de origem e a de destino, pode experimentar usar a ferramenta de validação de dados de código aberto.
Valide os dados de destino com declarações SQL
Pode executar declarações SQL para verificar se as tabelas existem na base de dados do Cloud SQL migrada. Faça o seguinte:
- Estabeleça ligação à sua instância do Cloud SQL para PostgreSQL com uma ferramenta onde pode
executar comandos SQL nas bases de dados migradas.
Para mais informações sobre como estabelecer ligação a instâncias do Cloud SQL, consulte as Opções de ligação na documentação do Cloud SQL.
Execute comandos SQL para validar os dados migrados. Por exemplo:
- Indicar todas as tabelas na base de dados:
SELECT * FROM pg_catalog.pg_tables;
- Valide o conteúdo da tabela:
SELECT * FROM TABLE_NAME';
- Indicar todas as tabelas na base de dados:
Valide dados com a ferramenta de validação de dados
A ferramenta de validação de dados de código aberto permite-lhe fazer comparações de dados muito precisas entre duas bases de dados, mas requer a criação de associações de rede às bases de dados de origem e de destino.
Os passos seguintes mostram um exemplo mínimo:
Implemente ou use uma máquina virtual com acesso à origem e ao destino.
Na máquina virtual, crie uma pasta na qual instalar a ferramenta de validação de dados.
Navegue até esta pasta.
Use
pip
para instalar a ferramenta de validação de dados.pip install google-pso-data-validator
Crie ligações à base de dados Oracle de origem e à base de dados Cloud SQL for PostgreSQL de destino:
data-validation connections add -c source Oracle --host 'ip-address' --port port --user username --password pswd --database database-name data-validation connections add -c target Postgres --host 'ip-address' --port port --user username --password pswd --database database-name
Por exemplo:
data-validation connections add -c source Oracle --host '10.10.10.11' --port 1521 --user system --password pswd --database XE data-validation connections add -c target Postgres --host '10.10.10.12' --port 5432 --user postgres --password pswd --database postgres
Crie ou gere uma lista de tabelas para comparar os dados entre as bases de dados de origem e de destino:
export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas schema-name)
Por exemplo:
export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas public)
Executar a validação completa em todas as tabelas:
data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
Sugerimos que execute esta validação durante a replicação para garantir a consistência relativa. As consultas de tabelas grandes podem demorar demasiado tempo a serem executadas durante um pequeno período de promoção. Nestes casos, use a ferramenta de validação de dados para adicionar filtros de modo a reduzir o tempo de execução ou preparar a lista de tabelas para incluir um subconjunto de tabelas para a validação final.