Verificar uma migração

Nesta página, descrevemos como confirmar se os dados migrados estão completos e precisos. No mínimo, você deve executar instruções SQL para verificar se as tabelas existem no banco de dados do AlloyDB para PostgreSQL migrado. Para uma comparação de dados mais precisa entre o banco de dados de origem e de destino, use a ferramenta de validação de dados de código aberto.

Verificar dados de destino com instruções SQL

Execute 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 à instância do Cloud SQL para PostgreSQL com uma ferramenta em que é possível 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 requer a criação de conexões de rede com 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. Acesse essa pasta.

  4. Use pip para instalar a ferramenta de validação de dados.

    pip install google-pso-data-validator
    
  5. Crie conexões com o banco de dados Oracle de origem e o banco de dados AlloyDB para 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
    

    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 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. As consultas de tabelas grandes podem levar muito tempo para serem executadas durante uma janela de promoção pequena. Nesses casos, use a ferramenta de validação de dados para adicionar filtros que reduzam o tempo de execução ou prepare a lista de tabelas para incluir um subconjunto de tabelas para a validação final.