Preparar a origem para a conversão

Nesta página, descrevemos como preparar o esquema do banco de dados de origem para conversão no espaço de trabalho de conversão legado usando a ferramenta de migração Ora2Pg.

O Oracle e o PostgreSQL usam dialetos e tipos de dados SQL diferentes para definir os objetos e tipos de dados que contêm. Ao migrar entre esses motores SQL, é necessário converter o esquema e o código do Oracle em um esquema e código compatíveis com o PostgreSQL.

No Database Migration Service, há duas maneiras de abordar a conversão de origem:

  • (Recomendado) Use o espaço de trabalho de conversão com o editor de conversão integrado.

    Nessa abordagem, a conversão de esquema é automatizada e todas as ações ocorrem diretamente no Database Migration Service. Se você optar por usar essa abordagem, não será necessário fazer mais preparativos (exceto adicionar informações de conectividade relevantes). Continue para a seção Configurar o banco de dados de destino do Cloud SQL para PostgreSQL.

  • Use o espaço de trabalho de conversão legado com a ferramenta de conversão Ora2Pg.

    Essa abordagem é útil se você quiser executar os procedimentos de conversão fora do Database Migration Service. Siga todas as etapas na seção Usar o Ora2Pg para conversão de esquema antes de criar um espaço de trabalho de conversão.

Usar o Ora2Pg para conversão de esquema

Antes de configurar um espaço de trabalho de conversão, faça o seguinte:

  1. Configure um arquivo Ora2Pg. Para mais informações, consulte a seção Configuração da documentação do Ora2Pg.
  2. Use o Ora2Pg para gerar scripts SQL que podem ser carregados no banco de dados de destino do Cloud SQL para PostgreSQL. Para mais informações, consulte a seção Instalação da documentação do Ora2Pg.
  3. Execute os scripts SQL no seu banco de dados do Cloud SQL para PostgreSQL. O esquema será criado no banco de dados.

Depois de concluir essas etapas, crie um espaço de trabalho de conversão que inclua o arquivo Ora2Pg configurado. O Database Migration Service usa esse arquivo para criar mapeamentos de tabelas entre o banco de dados Oracle de origem e o banco de dados de destino do Cloud SQL para PostgreSQL. Esses mapeamentos de tabela são usados para garantir que o Database Migration Service carregue os dados da origem para o destino corretamente.

Trabalhar com as diretivas do Ora2Pg

O Database Migration Service usa as seguintes diretivas no arquivo de configuração do Ora2Pg:

  • BOOLEAN_VALUES
  • DATA_TYPE
  • DEFAULT_NUMERIC
  • ENABLE_MICROSECOND
  • EXPORT_SCHEMA
  • MODIFY_STRUCT
  • MODIFY_TYPE
  • PG_INTEGER_TYPE
  • PG_NUMERIC_TYPE
  • PG_SCHEMA
  • PRESERVE_CASE
  • REPLACE_AS_BOOLEAN
  • REPLACE_COLS
  • REPLACE_TABLES
  • SCHEMA

Como o Database Migration Service usa perfis de conexão para definir detalhes de conectividade, não é necessário definir as seguintes diretivas no arquivo de configuração do Or2Pg:

  • ORACLE_DSN
  • ORACLE_HOME
  • ORACLE_PWD
  • ORACLE_USER
  • PG_DSN
  • PG_PWD
  • PG_USER

Além disso, o Database Migration Service não usa a diretiva de configuração WHERE para limitar os registros a serem migrados.

Para mais informações sobre as diretivas de configuração do Ora2Pg, consulte a seção Configuração da documentação do Ora2Pg.

Trabalhar com tabelas sem chaves primárias

As instruções UPDATE e DELETE da linguagem de manipulação de dados em tabelas sem chaves primárias podem gerar registros duplicados, porque o Database Migration Service não pode rastrear qual linha foi alterada. Para saber como migrar tabelas no banco de dados de origem que não têm chaves primárias, consulte Migrar tabelas sem chaves primárias.