Migrar seu banco de dados Oracle para o Cloud SQL para PostgreSQL

Esta página descreve como converter seu banco de dados Oracle para a sintaxe do PostgreSQL e migrar os dados para o Cloud SQL para PostgreSQL com o serviço de migração de banco de dados.

O processo de migração envolve as seguintes tarefas:

  1. Configurar o banco de dados de origem para conectividade de migração e preparar os dados para conversão no PostgreSQL.

  2. Criação da instância de destino do Cloud SQL para PostgreSQL.

  3. Converta o esquema do Oracle e outros objetos para a sintaxe do PostgreSQL com um espaço de trabalho de conversão do Database Migration Service.

  4. Criar e executar o job de migração no Database Migration Service.

  5. Monitorar o progresso do job de migração com os recursos de observabilidade do Database Migration Service.

  6. Promover o job de migração após a migração completa dos dados.

Custos

Neste documento, você usará os seguintes componentes faturáveis de Google Cloud:

Para gerar uma estimativa de custo baseada na projeção de uso, use a calculadora de preços.

Antes de começar

  1. Verifique se esse caminho de migração é totalmente compatível com seu cenário. Consulte as páginas a seguir:
    • Origens e destinos compatíveis na página Visão geral do cenário lista todas as versões de origem e destino compatíveis.
    • Limitações conhecidas descreve tipos de dados, tamanhos de banco de dados e outras limitações.
    • A visão geral de rede descreve as soluções de conectividade de rede disponíveis.

      Para migrar seus dados, o Database Migration Service precisa estabelecer uma conexão de rede com as instâncias de origem e de destino. Dependendo da sua arquitetura, talvez seja necessário fazer mais preparativos para facilitar a conectividade de rede.

  2. Considere em qual região você quer criar o banco de dados de destino. O Database Migration Service é um produto totalmente regional, ou seja, todas as entidades relacionadas à migração (perfis de conexão de origem e destino, jobs de migração, bancos de dados de destino, espaços de trabalho de conversão) precisam ser salvas em uma única região.
  3. No console do Google Cloud, na página do seletor de projetos, selecione ou crie um Google Cloud projeto.

    Acessar o seletor de projetos

  4. Ative as APIs Database Migration Service, Compute Engine, Cloud Storage e Cloud SQL Admin.

    Ative as APIs

Funções exigidas

Para receber as permissões necessárias para realizar migrações heterogêneas do Oracle com o serviço de migração de banco de dados, peça ao administrador para conceder a você os papéis do IAM necessários no projeto:

Para mais informações sobre como conceder papéis, consulte Gerenciar acesso na documentação do Identity and Access Management.

Esses papéis predefinidos contêm as permissões necessárias para realizar migrações heterogêneas do Oracle com o serviço de migração de banco de dados. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As permissões a seguir são necessárias para realizar migrações heterogêneas do Oracle com o Database Migration Service:

  • datamigration.*
  • cloudsql.instances.create
  • cloudsql.instances.get
  • cloudsql.instances.list
  • cloudsql.instances.update
  • cloudsql.instances.delete
  • cloudsql.operations.get
  • cloudsql.users.list
  • cloudsql.users.get
  • cloudsql.users.create
  • cloudsql.users.update
  • cloudsql.users.delete

Essas permissões também podem ser concedidas com papéis personalizados ou outros papéis predefinidos.

Etapa 1. Preparar o banco de dados de origem

Para preparar os dados de origem para a migração, siga estas etapas:

  1. Configurar a conectividade do banco de dados de origem. Faça o seguinte:
    1. Opcional: considere usar certificados SSL/TLS para proteger a conexão de rede de origem. Para mais informações, consulte Proteger conexões de rede com TLS.

      A criptografia SSL/TLS é compatível com o Oracle versão 12 e mais recentes. O serviço de migração de banco de dados oferece suporte apenas ao método de criptografia TLS. Dependendo da configuração SSL/TLS, talvez seja necessário realizar outras etapas de configuração no banco de dados de origem.

    2. Escolha e configure o método de conectividade da rede de origem.
  2. Configure a instância do banco de dados de origem.

    Nesta etapa, você cria uma conta de usuário de banco de dados de migração dedicada e ativa os recursos de replicação necessários.

  3. Opcional: Otimize a configuração do arquivo de registro.

    O acesso a arquivos de registro arquivados adiciona latência ao processo de migração. É possível ajustar algumas configurações de arquivos de registro para controlar o impacto da latência.

  4. Crie um perfil de conexão de origem.

    Os perfis de conexão contêm informações necessárias para que o serviço de migração de banco de dados estabeleça a conexão com o banco de dados de origem. Os detalhes da conexão variam de acordo com o método de conectividade da rede de origem que você usa.

Etapa 2. Preparar a instância de destino do Cloud SQL para PostgreSQL

Para configurar a instância de destino do Cloud SQL, siga estas etapas:

  1. Escolha e configure o método de conectividade de rede de destino.
  2. Crie e configure a instância de destino do Cloud SQL para PostgreSQL.

    Use recursos de computação e memória suficientes para atender às suas necessidades de migração. Para mais informações, consulte Recomendações de migração.

  3. Crie um perfil de conexão de destino.

    Os perfis de conexão contêm informações necessárias para que o Database Migration Service estabeleça a conexão com o banco de dados de destino. Os detalhes da conexão variam de acordo com o método de conectividade de rede de destino usado.

Etapa 3. Converter objetos do Oracle para a sintaxe do PostgreSQL

Os bancos de dados geralmente têm milhares de objetos. A conversão de todos eles em uma única sessão pode ser um processo desafiador. Com os espaços de trabalho de conversão, é possível dividir o processo de conversão em várias fases, em que você adiciona novos objetos à conversão, corrige os problemas e os testa no banco de dados de destino.

Para converter objetos do banco de dados de origem, faça o seguinte:

  1. Crie o espaço de trabalho de conversão e execute a conversão inicial.
  2. Corrija problemas de conversão e aplique o esquema ao banco de dados de destino.

Etapa 4. Criar e executar o job de migração

Para configurar e executar a migração, siga estas etapas:

  1. Opcional: se você quiser gerenciar seus próprios certificados para o trabalho de migração, prepare as chaves de criptografia necessárias.
  2. Opcional: se você quiser executar a fase de dump completo, exporte todos os dados do banco de dados de origem do Oracle e carregue-os na instância de destino do Cloud SQL para PostgreSQL fora do Database Migration Service.

    Se você decidir executar o despejo completo fora do fluxo de jobs de migração, registre o número de mudança do sistema (SCN, na sigla em inglês) em que o serviço de migração de banco de dados precisa iniciar a replicação do CDC.

  3. Crie e execute o job de migração.

    O banco de dados de destino do Cloud SQL é gravável durante a migração para permitir que as mudanças de DML sejam aplicadas, se necessário. Tenha cuidado para não fazer mudanças na configuração do banco de dados ou nas estruturas de tabelas que possam interromper o processo de migração ou afetar a integridade dos dados.

    É possível monitorar o progresso da migração e a integridade da instância de destino com os recursos de observância do Database Migration Service. Consulte Métricas de job de migração.

Etapa 5. Concluir a migração

Quando você decidir mudar seu aplicativo para a nova instância do Cloud SQL para PostgreSQL, finalize a migração seguindo estas etapas:

  1. Interrompa todas as operações de gravação no banco de dados de origem. Você pode mudar para o modo somente leitura para manter a funcionalidade operacional.
  2. Opcional: verifique se os dados de migração estão completos.
  3. Promova o job de migração.

Agora é possível limpar todas as entidades do Database Migration Service, como perfis de conexão, jobs de migração e espaços de trabalho de conversão. Você também pode mantê-las e reutilizá-las para outra migração.

A seguir

Saiba mais sobre os Google Cloud recursos do Cloud SQL para PostgreSQL. Consulte Recursos do Cloud SQL para PostgreSQL.