Criar um espaço de trabalho de conversão e converter o esquema

Nesta página, mostramos como criar um espaço de trabalho de conversão e usá-lo para realizar imediatamente a conversão determinista de código e esquema do Oracle para o PostgreSQL.

É possível criar espaços de trabalho de conversão interativos de duas maneiras:

  • Por uma conexão direta com o banco de dados: o Database Migration Service se conecta diretamente ao banco de dados de origem em execução por um perfil de conexão e recupera o esquema por uma conexão de rede.

  • Com arquivos de esquema no Cloud Storage: é possível extrair os metadados do esquema localmente usando scripts de extração fornecidos pelo Google, fazer upload dos arquivos resultantes para um bucket do Cloud Storage e preparar seu espaço de trabalho sem se conectar ao banco de dados de origem.

Conectar-se diretamente ao banco de dados de origem

É possível criar um espaço de trabalho de conversão interativo e realizar a conversão de esquema conectando-se diretamente ao banco de dados de origem com o Database Migration Service. Antes de criar o espaço de trabalho dessa maneira, crie um perfil de conexão para o banco de dados de origem.

Papéis necessários para o método de conexão direta

Para receber as permissões necessárias para criar um espaço de trabalho de conversão, peça ao administrador para conceder a você o papel do IAM de Administrador do Database Migration (roles/datamigration.admin) no projeto.

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

Esse papel predefinido contém as permissões necessárias para criar um espaço de trabalho de conversão no Database Migration Service. Para conferir as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para criar um espaço de trabalho de conversão no Database Migration Service:

  • cloudaicompanion.entitlements.get

    Essa permissão está incluída no papel roles/datamigration.admin. Ele é necessário para os recursos de conversão otimizados pelo Gemini.

  • datamigration.conversionworkspaces.apply
  • datamigration.conversionworkspaces.commit
  • datamigration.conversionworkspaces.convert
  • datamigration.conversionworkspaces.create
  • datamigration.conversionworkspaces.delete
  • datamigration.conversionworkspaces.get
  • datamigration.conversionworkspaces.getIamPolicy
  • datamigration.conversionworkspaces.list
  • datamigration.conversionworkspaces.rollback
  • datamigration.conversionworkspaces.seed
  • datamigration.conversionworkspaces.setIamPolicy
  • datamigration.conversionworkspaces.update

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

Criar um espaço de trabalho de conversão com um perfil de conexão

Para criar um espaço de trabalho de conversão em que o Database Migration Service se conecta ao banco de dados de origem e prepara o snapshot inicial dos objetos do banco de dados de origem, siga estas etapas:

  1. No console do Google Cloud , acesse Espaços de trabalho de conversão.

    Acessar os espaços de trabalho de conversão

  2. Clique em Configurar espaço de trabalho.
  3. Na página Criar um espaço de trabalho de conversão, faça o seguinte:
    1. Insira o nome, o identificador e a região do espaço de trabalho de conversão.
    2. No menu suspenso Mecanismo de banco de dados de origem, selecione Oracle.
    3. Em Mecanismo de banco de dados de destino, selecione Cloud SQL para PostgreSQL.
    4. Na seção Ativar as configurações do Gemini para seu espaço de trabalho, use as caixas de seleção para ativar os recursos de conversão com tecnologia do Gemini. Também é possível ativar esses recursos mais tarde, quando você quiser converter código e esquema com a assistência do Gemini.

      Os recursos de conversão com tecnologia do Gemini exigem a API Gemini para Google Cloud . Para mais informações, consulte Recursos de conversão com tecnologia do Gemini.

    5. Clique em Criar espaço de trabalho e continuar.
  4. Na página Definir snapshot do esquema de origem e pull, faça o seguinte:
    1. Na seção Método de conexão de origem, selecione Perfil de conexão.
    2. No menu suspenso Perfil de conexão de origem, selecione o perfil de conexão do banco de dados de origem.
    3. Clique em Extrair snapshot do esquema e continuar.

    O Database Migration Service está se conectando ao banco de dados de origem e recuperando seu esquema. Esse processo pode levar vários minutos.

  5. Na página Selecionar e converter objetos, use as caixas de seleção para escolher quais objetos você quer converter para a sintaxe do PostgreSQL.

    Não é necessário converter todos os objetos de uma só vez. Em vez disso, você pode selecionar apenas alguns objetos agora e adicionar mais objetos à conversão mais tarde.

  6. Clique em Converter e continuar.

    O espaço de trabalho de conversão é aberto.

  7. Ao abrir um novo espaço de trabalho pela primeira vez, você pode fazer upgrade dele para acessar o recurso de conversão automática com tecnologia do Gemini. Faça o seguinte:
    • Na caixa de diálogo Apresentamos a conversão automática do Gemini, marque a caixa de seleção Fazer upgrade do espaço de trabalho para conhecer a nova experiência e clique em Continuar.
    • Na caixa de diálogo Converter objetos de origem com o Gemini?, clique em Converter.

      O Database Migration Service vai realizar o processo de conversão novamente para aplicar as melhorias de conversão com tecnologia do Gemini aos resultados da conversão determinística. Para mais informações sobre o recurso de conversão automática do Gemini, consulte Conversão automática do Gemini.

Usar arquivos de esquema armazenados no Cloud Storage

É possível extrair os metadados do esquema localmente usando scripts de extração fornecidos pelo Google, fazer upload dos arquivos resultantes para um bucket do Cloud Storage e preparar seu espaço de trabalho sem se conectar ao banco de dados de origem.

Papéis necessários para usar os arquivos de esquema no Cloud Storage

Para receber as permissões necessárias para criar um espaço de trabalho de conversão usando arquivos de esquema armazenados no Cloud Storage, peça ao administrador para conceder os papéis do IAM necessários no projeto para as seguintes contas envolvidas no processo de migração:

  • Conta de usuário que cria o espaço de trabalho de conversão: Administrador de migração de banco de dados (roles/datamigration.admin)
  • Conta de serviço do Database Migration Service: papel de Leitor de objetos do Storage (roles/storage.objectViewer) no bucket do Cloud Storage que armazena os arquivos de esquema.

    O endereço de e-mail da conta de serviço do Database Migration Service usa o seguinte formato: service-PROJECT_NUMBER@gcp-sa-datamigration.. Substitua PROJECT_NUMBER pelo número do projeto do Google Cloud . Para mais informações sobre essa conta de serviço, consulte Conta de serviço do Database Migration Service.

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

O papel predefinido roles/datamigration.admin contém as permissões necessárias para criar um espaço de trabalho de conversão no Database Migration Service. Para ver as permissões exatas necessárias, expanda a seção Permissões necessárias:

Permissões necessárias

As seguintes permissões são necessárias para criar um espaço de trabalho de conversão no Database Migration Service:

  • cloudaicompanion.entitlements.get

    Essa permissão está incluída no papel roles/datamigration.admin. Ele é necessário para os recursos de conversão otimizados pelo Gemini.

  • datamigration.conversionworkspaces.apply
  • datamigration.conversionworkspaces.commit
  • datamigration.conversionworkspaces.convert
  • datamigration.conversionworkspaces.create
  • datamigration.conversionworkspaces.delete
  • datamigration.conversionworkspaces.get
  • datamigration.conversionworkspaces.getIamPolicy
  • datamigration.conversionworkspaces.list
  • datamigration.conversionworkspaces.rollback
  • datamigration.conversionworkspaces.seed
  • datamigration.conversionworkspaces.setIamPolicy
  • datamigration.conversionworkspaces.update

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

Criar um espaço de trabalho de conversão com arquivos de esquema

Para criar um espaço de trabalho de conversão com arquivos de esquema, siga estas etapas.

  1. Recuperar os scripts Python no console do Google Cloud . Siga estas etapas:
    1. No console do Google Cloud , acesse Espaços de trabalho de conversão.

      Acessar os espaços de trabalho de conversão

    2. Clique em Configurar espaço de trabalho.
    3. Na página Criar um espaço de trabalho de conversão:
      1. Insira o nome, o identificador e a região do espaço de trabalho.
      2. No menu suspenso Mecanismo de banco de dados de origem, selecione Oracle.
      3. No menu suspenso Mecanismo de banco de dados de destino, selecione Cloud SQL para PostgreSQL.
      4. Na seção Ativar as configurações do Gemini para seu espaço de trabalho, use as caixas de seleção para ativar os recursos de conversão com tecnologia do Gemini e clique em Continuar.

        Também é possível ativar esses recursos mais tarde, quando quiser converter código e esquema com a assistência do Gemini. Os recursos de conversão com tecnologia do Gemini exigem a API Gemini para Google Cloud . Para mais informações, consulte Recursos de conversão com tecnologia do Gemini.

    4. Na página Definir origem e extrair snapshot do esquema, na seção Método de conexão de origem, selecione Cloud Storage.
    5. Na seção Antes de selecionar uma pasta, ao lado do título Extrator de metadados do Oracle, clique em Abrir. Siga as instruções no painel lateral para fazer o download e executar o utilitário de extração no banco de dados de origem para produzir os arquivos JSON de metadados do esquema. Esse utilitário exige que você consiga estabelecer uma conexão de rede com o banco de dados de origem.
  2. Crie um bucket do Cloud Storage dedicado para fazer upload dos arquivos JSON de metadados do esquema. Para mais informações sobre como criar buckets do Cloud Storage, consulte Criar buckets na documentação do Cloud Storage.
  3. No bucket dedicado do Cloud Storage, crie uma pasta vazia e dedicada para os arquivos de esquema do banco de dados que você exportou nas etapas anteriores. Para mais informações sobre como criar pastas do Cloud Storage, consulte Criar e gerenciar pastas na documentação do Cloud Storage.
  4. Faça upload apenas dos arquivos de esquema JSON de metadados que você criou com os scripts do Python recuperados do console do Google Cloud nas etapas anteriores para a pasta de banco de dados dedicada e vazia no bucket do Cloud Storage.
  5. Continue criando seu espaço de trabalho no console do Google Cloud ou crie um novo com a Google Cloud CLI.

    Console

    1. Depois de fazer upload dos arquivos de metadados de esquema extraídos para um bucket do Cloud Storage, continue na página Definir origem e extrair snapshot do esquema.
    2. No campo Pasta, clique em Procurar e selecione a pasta que contém os arquivos de esquema.
    3. Clique em Extrair snapshot do esquema e continuar.

      O Database Migration Service agora analisa os metadados do esquema do bucket.

    4. Na página Selecionar e converter objetos, selecione os objetos que você quer converter e clique em Converter e continuar.

    gcloud

    Depois de fazer upload dos arquivos de metadados de esquema extraídos para um bucket do Cloud Storage, é possível criar e inicializar um novo espaço de trabalho com a Google Cloud CLI. Siga estas etapas:

    1. Crie um espaço de trabalho de conversão vazio.
      Execute o seguinte comando (clique para expandir):

      gcloud database-migration conversion-workspaces create

        gcloud database-migration conversion-workspaces create WORKSPACE_ID \
            --region=REGION \
            --source-database-engine=ORACLE \
            --destination-database-engine=POSTGRESQL

      Substitua:

      • WORKSPACE_ID: com o identificador do seu espaço de trabalho de conversão.
      • REGION: a região em que você quer criar o espaço de trabalho.
    2. Inicialize o espaço de trabalho usando os arquivos de esquema no Cloud Storage.
      Para analisar e carregar os arquivos de metadados do esquema armazenados no bucket no espaço de trabalho de conversão, execute o seguinte comando (clique para expandir):

      gcloud database-migration conversion-workspaces seed

        gcloud database-migration conversion-workspaces seed WORKSPACE_ID \
            --region=REGION \
            --gcs-path=gs://BUCKET_NAME/PREFIX/

      Substitua:

      • WORKSPACE_ID: com o identificador do seu espaço de trabalho de conversão.
      • REGION: a região em que você quer criar o espaço de trabalho.
      • BUCKET_NAME: o nome do bucket do Cloud Storage que contém os arquivos de esquema.
      • PREFIX: o caminho para a pasta que contém os arquivos de metadados do esquema extraídos.

Espaços de trabalho de conversão legados

Os espaços de trabalho de conversão legados são um tipo mais antigo e limitado de espaços de trabalho de conversão. Não recomendamos o uso do tipo legado de espaços de trabalho de conversão para suas migrações. Se você precisar usar um espaço de trabalho de conversão legado, abra a seção Criar um espaço de trabalho de conversão legado e converter o esquema para mais informações.

Criar um espaço de trabalho de conversão legado e converter o esquema

Os espaços de trabalho de conversão legados usam arquivos de configuração do Ora2Pg. Antes de criar um espaço de trabalho de conversão legado, crie sua configuração do Ora2Pg fora do Database Migration Service. Para mais informações, consulte Trabalhar com espaços de trabalho de conversão legados.

  1. No console do Google Cloud , acesse Espaços de trabalho de conversão.

    Acessar os espaços de trabalho de conversão

  2. Clique em Configurar espaço de trabalho.
  3. Na página Criar um espaço de trabalho de conversão, faça o seguinte:
    1. Insira o nome, o identificador e a região do espaço de trabalho de conversão.
    2. No menu suspenso Mecanismo de banco de dados de origem, selecione Oracle.
    3. Em Mecanismo de banco de dados de destino, selecione Cloud SQL para PostgreSQL.
    4. Abra a seção Personalizar configurações do espaço de trabalho e marque a caixa de seleção Ativar espaço de trabalho de conversão legado.
    5. Clique em Criar espaço de trabalho e continuar.
  4. Na página Conectar à origem e converter objetos, faça o seguinte:
    1. No menu suspenso Perfil de conexão de origem, selecione o perfil de conexão do banco de dados de origem.
    2. Na caixa Arquivo de configuração, clique em Procurar e use o seletor de arquivos do sistema para selecionar o arquivo de mapeamento de conversão.

      Para fazer upload de vários arquivos de mapeamento de conversão, clique em Adicionar arquivo.

    3. Na seção Converter a configuração, clique em Extrair esquema e converter.

      O Database Migration Service está se conectando ao banco de dados de origem, recuperando o esquema e convertendo-o no esquema SQL de destino de acordo com as regras definidas no arquivo de mapeamento de conversão. Esse processo pode levar vários minutos.

  5. Clique em Salvar e fechar.

    A página de detalhes do espaço de trabalho de conversão é aberta.

Agora é possível aplicar o esquema convertido ao banco de dados de destino. Se o banco de dados de origem incluir tabelas que não têm chaves primárias, você também precisará criar manualmente restrições de chave primária nas tabelas convertidas no banco de dados de destino depois de aplicar o esquema convertido. Para mais informações, consulte Trabalhar com espaços de trabalho de conversão legados.

A seguir

Agora é possível trabalhar com o espaço de trabalho de conversão para corrigir problemas de conversão, modificar os objetos com o editor interativo e aplicar o esquema convertido ao banco de dados de destino. Consulte Converter o código e o esquema do Oracle para a sintaxe do PostgreSQL.