Verificar uma migração

Esta página descreve como confirmar se os dados migrados estão completos e exatos. No mínimo, execute instruções SQL para verificar se as tabelas existem no banco de dados migrado do AlloyDB para PostgreSQL. Para uma comparação de dados mais precisa entre o banco de dados de origem e de destino, tente usar a ferramenta de validação de dados de código aberto.

Verificar os dados de destino com instruções SQL

É possível executar instruções SQL para verificar se as tabelas existem no banco de dados migrado do AlloyDB para PostgreSQL. Faça o seguinte:

  1. Conecte-se à sua instância do Cloud SQL para PostgreSQL com uma ferramenta em que você possa executar comandos SQL nos bancos de dados migrados.

    Para mais informações sobre como se conectar a instâncias do Cloud SQL, consulte Opções de conexão na documentação do Cloud SQL.

  2. Execute comandos SQL para verificar os dados migrados. Exemplo:

    • Liste todas as tabelas no banco de dados:
      SELECT * FROM pg_catalog.pg_tables;
    • Verifique o conteúdo da tabela:
      SELECT * FROM TABLE_NAME';

Verificar usando a ferramenta de validação de dados

A ferramenta de validação de dados de código aberto permite realizar comparações de dados muito precisas entre dois bancos de dados, mas exige a criação de conexões de rede para os bancos de dados de origem e de destino.

As etapas a seguir mostram um exemplo mínimo:

  1. Implante ou use uma máquina virtual com acesso à origem e ao destino.

  2. Na máquina virtual, crie uma pasta para instalar a ferramenta de validação de dados.

  3. Navegue até esta pasta.

  4. Use pip para instalar a ferramenta.

    pip install google-pso-data-validator
    
  5. Crie conexões com o banco de dados Oracle de origem e o banco de dados de destino do AlloyDB para PostgreSQL:

    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
    

    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
    
  6. Crie ou gere uma lista de tabelas para comparar os dados entre os bancos de dados de origem e de destino:

    export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas schema-name)
    

    Exemplo:

    export TABLES_LIST=$(data-validation find-tables --source-conn source --target-conn target --allowed-schemas public)
    
  7. Execute a validação completa em todas as tabelas:

    data-validation validate column --source-conn source --target-conn target --tables-list "${TABLES_LIST}"
    

Sugerimos que você execute essa validação durante a replicação para garantir a consistência relativa. Consultas de tabelas grandes podem levar muito tempo para serem executadas durante uma pequena janela de promoção. Nesses casos, use a ferramenta de validação de dados para adicionar filtros e reduzir o tempo de execução ou prepare a lista de tabelas para incluir um subconjunto de tabelas para a validação final.