Tutorial: conversão de esquemas do Oracle para o Base de Dados do Azure para PostgreSQL flexible server

Este tutorial orienta-o na conversão de esquemas de bases de dados Oracle para Base de Dados do Azure para PostgreSQL, utilizando a extensão Visual Studio Code PostgreSQL com o Microsoft Foundry para gerar e rever definições PostgreSQL.

Abrange a ligação à sua origem Oracle e ao destino Base de Dados do Azure para PostgreSQL, a configuração do Microsoft Foundry, a execução do assistente de migração e a revisão dos artefactos PostgreSQL gerados. Antes de começar, certifique-se de que tem acesso à rede e credenciais tanto para servidores como para uma implementação do Microsoft Foundry.

Aqui está o que pode esperar durante a conversão:

  • Descoberta de esquemas: A ferramenta analisa os seus objetos de esquema Oracle.
  • AI processing: O Microsoft Foundry processa e converte objetos compatíveis.
  • Verificações com base de dados temporária: A ferramenta tenta compilação e verificações estáticas disponíveis. A validação funcional, de dados e de aplicação mantém-se separada.
  • Revisão de objetos: Utilize o Conversion Object Explorer para inspecionar resultados e refinar as definições Geradas do PostgreSQL.
  • Geração de saída: Os objetos convertidos com sucesso são guardados como ficheiros PostgreSQL.

Pré-requisitos

Esta secção descreve os pré-requisitos para usar a funcionalidade de conversão de esquema Oracle to Azure Database para PostgreSQL no Visual Studio Code antes de iniciar uma conversão.

Requisitos do sistema

Categoria Detalhes
Versão Visual Studio Code 1.95.2 ou posterior
GitHub Copilot subscrição Pro+, Negócios, Empresas

Suporte de sistema operativo

Sistema Operativo Detalhes de Apoio
Windows Apenas arquitetura x64
Linux Arquitetura x64
macOS macOS 13+

Requisitos do Base de Dados do Azure para PostgreSQL de destino

Componente Requisito da versão
Base de Dados do Azure para PostgreSQL PostgreSQL versão 15 ou posterior
Base de dados scratch Azure Database para servidor flexível de PostgreSQL

Requisitos do modelo de IA

Precisa de configurar um dos seguintes componentes de IA:

Componente de IA Versão do modelo
Microsoft Foundry Implantação do GPT-5.2

Configuração de implementação do Microsoft Foundry

No Microsoft Foundry, crie uma implementação que utilize o modelo gpt-5.2. O nome da implementação é aquele que escolheu quando criou a implantação; Não tem de corresponder ao nome do modelo.

O endpoint é o URL do seu recurso do Microsoft Foundry. Os recursos do Microsoft Foundry expõem vários nomes de host equivalentes; qualquer um dos seguintes formatos é válido:

  • https://{your-resource}.services.ai.azure.com
  • https://{your-resource}.openai.azure.com
  • https://{your-resource}.cognitiveservices.azure.com

Substitua {your-resource} pelo nome do seu recurso Microsoft Foundry (por exemplo, oracletopg). Se precisar de chamar diretamente uma rota de inferência, o caminho de pré-visualização atual é /openai/responses?api-version=2025-04-01-preview.

Para mais informações sobre formatos de endpoints e rotas de inferência, veja Endpoints for Microsoft Foundry Models.

Tip

Para encaminhar o tráfego do Microsoft Foundry através do API Management do Azure para governação centralizada, limitação e observabilidade, configure um gateway de IA em frente ao seu recurso Foundry e use o URL do gateway como ponto final. Para mais informações, consulte Configurar AI Gateway nos seus recursos da Foundry.

Privilégios obrigatórios para a base de dados

Antes de executar a conversão de esquema, verifique o acesso aos metadados de origem e as permissões da base de dados temporária junto dos administradores da base de dados. A conta Oracle precisa de acesso a metadados de esquemas e vistas de dicionário, não a dados de linhas de aplicação. A conta PostgreSQL deve ser capaz de dropar e recriar esquemas correspondentes e criar objetos para validação. Use uma conta dedicada sempre que possível e siga o princípio do menor privilégio.

Privilégios Originais da Oracle

São exigidos os seguintes privilégios mínimos na base de dados Oracle de origem:

Privilégio Purpose
CONNECT Ligação básica à base de dados
SELECT_CATALOG_ROLE Acesso a vistas de dicionários de dados
SELECIONE QUALQUER DICIONÁRIO Leia metadados do sistema e objetos do dicionário
SELECT SYS.ARGUMENT$ Acesso a informações sobre procedimentos e argumentos funcionais
SELECT SYS.V_$RESOURCE_LIMIT Acesso à utilização de sessões e processos e limites através de V$RESOURCE_LIMIT

Privilégios de base de dados temporária

Configure o acesso seguinte na base de dados temporária selecionada. O nível CREATE de base de dados não concede permissão para eliminar um esquema pertencente a outra função.

Access Purpose
CONNECT na base de dados Ligar para conversão e validação.
CREATE na base de dados Crie esquemas de validação.
Ser proprietário dos esquemas correspondentes, ou ter uma função devidamente autorizada Elimina os esquemas correspondentes antes de os recriar.
Permissão para criar objetos nos esquemas de validação Criar e compilar definições convertidas.
Permissões para instalar extensões ou ajuda do administrador Instale as extensões necessárias para conversão e validação.

Requisitos de rede

  • Conectividade de saída: Pontos finais do Microsoft Foundry.
  • Conectividade da base de dados: Tanto a base de dados Oracle de origem como o servidor flexível do Base de Dados do Azure para PostgreSQL.
  • Acesso HTTPS: Visual Studio Code Extensions Marketplace e serviços GitHub Copilot.
  • Acesso ao repositório do GitHub: https://github.com/microsoft/pgsql-tools/.

Oracle Instant Client (para modo cliente pesado)

A ferramenta de conversão de esquema liga-se à Oracle usando o modo thin client por defeito, que não requer software adicional. Se o seu ambiente exigir um modo cliente denso, instale o Oracle Instant Client na máquina que executa o Visual Studio Code. A ferramenta lê a sua configuração sqlnet.ora e tnsnames.ora e alterna automaticamente para o modo espesso quando uma definição o exige.

Pode determinar se é necessário um modo cliente robusto verificando os ficheiros de configuração de rede Oracle no seu ambiente de origem. Procure os seguintes parâmetros no sqlnet.ora ficheiro (normalmente localizados em $ORACLE_HOME/network/admin/):

Parâmetro Indica que é necessário o modo espesso
SQLNET.CRYPTO_CHECKSUM_CLIENT Definido para REQUIRED ou REQUESTED para encriptação nativa de rede
SQLNET.ENCRYPTION_CLIENT Definido para REQUIRED ou REQUESTED para encriptação nativa de rede

Autenticação Microsoft Foundry

Configure um dos seguintes métodos de autenticação para o Microsoft Foundry:

Método de autenticação Requirements
Chave de API URL do endpoint e chave da API do Microsoft Foundry.
Microsoft Entra ID Sessão iniciada na extensão Conta do Azure, função Foundry User (anteriormente Azure AI User) atribuída ao recurso Microsoft Foundry.

Processo de migração

Esta secção explica o processo de conversão. Instalas a extensão, inicializas um projeto, ligas-te ao Oracle, analisas o Discovery e configuras a base de dados do zero e o Microsoft Foundry. A conversão tenta a compilação e as verificações estáticas disponíveis na base de dados scratch. Depois revês e refinas a saída, implementas-na numa base de dados separada não em produção e valida-a de forma independente antes da utilização em produção.

Passo 1: Instalar a extensão PostgreSQL Visual Studio Code

  1. Abre Visual Studio Code.

  2. Aceda à vista Extensões (Ctrl+Shift+X).

  3. Procure por PostgreSQL e instale a extensão PostgreSQL publicada por Microsoft.

    1. Transferência no Marketplace

    Captura de ecrã da instalação da extensão PostgreSQL no Visual Studio Code.

Passo 2: Criar uma ligação ao Base de Dados do Azure para PostgreSQL

  1. No painel da extensão PostgreSQL, crie uma ligação à sua instância do servidor flexível do Base de Dados do Azure para PostgreSQL.

  2. Introduza os detalhes da ligação (anfitrião, base de dados, nome de utilizador, palavra-passe).

  3. Teste e guarde a ligação.

    Captura de ecrã da adição de uma nova base de dados Base de Dados do Azure para PostgreSQL connection.

Passo 3: Abra um novo espaço de trabalho

  1. Crie uma nova pasta na sua máquina local para o projeto de migração.

  2. Abra a pasta como um novo espaço de trabalho no Visual Studio Code.

    Captura de ecrã da adição de um novo espaço de trabalho no Visual Studio Code.

Passo 4: Inicializar um projeto de migração

  1. Abre a extensão PostgreSQL.

  2. Vai ao painel de Migrações.

  3. Selecione Criar Projeto de Migração.

    Captura de ecrã da criação de um novo projeto de migração.

Passo 5: Configurar as definições do projeto

  1. No Assistente de Migração, introduza o nome do seu projeto.

  2. Selecione Seguinte para continuar.

    Captura de ecrã do nome do projeto.

Passo 6: Configurar a ligação Oracle

  1. Introduza os detalhes da sua ligação à Oracle:

    • Nome do host ou servidor.
    • Número da porta.
    • Nome da base de dados ou serviço.
    • Nome de utilizador e palavra-passe.

    A ferramenta seleciona automaticamente o modo de cliente fino ou de cliente pesado com base nas suas definições de sqlnet.ora e tnsnames.ora; a interface não disponibiliza um seletor manual. O modo estreito é utilizado por predefinição. Se o seu sqlnet.ora exigir o modo thick, certifique-se de que o Oracle Instant Client está instalado e de que a respetiva localização está definida na variável de ambiente PATH antes de continuar. Para mais informações, consulte Oracle Instant Client.

  2. Selecione Load Schemas. A ferramenta testa a ligação Oracle e, se bem-sucedida, lista todos os esquemas definidos pelo utilizador disponíveis no Oracle.

  3. Selecione um ou mais esquemas para converter para PostgreSQL.

  4. Selecione Próximo: Discovery.

    Captura de ecrã da ligação ao Oracle com esquemas selecionados e o botão Seguinte: Deteção. Os valores da ligação foram ocultados.

Passo 7: Reveja os resultados da Discovery

Descoberta mostra o inventário de origem e o âmbito de extração previsto. Não é extraído nenhum DDL nesta fase. Para uma explicação das contagens resumidas e do âmbito, veja Discovery na visão geral da conversão de esquemas.

  1. Aguarde que o Discovery termine.

  2. Em Permissões da origem, reveja cada verificação, a respetiva finalidade e o respetivo resultado. Analise as verificações que falharam com o administrador da sua base de dados Oracle. Após resolver os problemas de permissões, selecione Atualizar deteção e reveja os resultados atualizados. Para as permissões necessárias, veja privilégios do Oráculo de Origem.

  3. Revise as contagens de resumo de objetos descobertos, por extrair, excluídos e inválidos.

  4. Expanda os tipos de objetos suportados para rever as contagens de A extrair, Excluído e Objetos inválidos por tipo. Um tipo suportado pode ainda ter objetos excluídos; estas contagens não são resultados de conversão.

  5. Expandir Tipos de objetos não suportados para rever as categorias não suportadas encontradas na origem. Para detalhes de suporte e alternativas ao PostgreSQL, veja Limitações de conversão de esquemas.

  6. Em Esquemas dependentes, reveja esquemas referenciados que não selecionou. Selecione Mostrar diagrama para visualizar as referências. Os números nas ligações representam referências de dependência, não contagens de objetos a extrair ou converter.

  7. Revise o aviso separado sobre esquemas de sistema Oracle referenciados que não foram migrados. Não encare estas referências como esquemas de aplicação adicionais selecionados para conversão.

  8. Se precisares de alterar a seleção do esquema, seleciona Anterior para voltar a Ligar à Oracle, atualiza Esquemas e seleciona novamente Próximo: Descoberta . Revise o âmbito atualizado antes de continuar.

  9. Selecione revisei os objetos, exclusões e esquemas dependentes.

  10. Selecionar Próximo: Conexão PostgreSQL.

    Captura de ecrã do Discovery com verificações de permissões, contagens de objetos, dependências, confirmação do âmbito e Próximo: PostgreSQL Connection. Os detalhes da ligação estão censurados.

Passo 8: Configure uma base de dados temporária do Base de Dados do Azure para PostgreSQL

Usa uma base de dados vazia ou dedicada e não utilizada, sem objetos ou dados que precises de preservar. Para orientações de preparação, consulte Prepare the scratch database.

  1. Selecione a ligação Base de Dados do Azure para PostgreSQL que definiu na extensão PostgreSQL.

  2. Selecione a base de dados alvo na lista suspensa.

  3. Selecione Verificar Extensões. Se aparecer o aviso As extensões recomendadas não estão instaladas, verifique as extensões em falta. Siga as orientações de preparação para bases de dados de origem para adicionar as extensões necessárias à lista de permissões do servidor e instalá-las na base de dados selecionada, depois selecione novamente Verificar Extensões . Podes continuar com o aviso, mas objetos que dependem de extensões em falta podem exigir alterações manuais.

    Captura de ecrã da ligação à base de dados scratch com o aviso de extensão recomendada e a confirmação de recriação do esquema.

  4. Selecione a caixa de seleção a reconhecer que os esquemas scratch que correspondem aos esquemas selecionados da Oracle são eliminados e recriados durante a conversão, eliminando os seus objetos e dados existentes.

  5. Selecionar Próximo: Configuração do Modelo Microsoft Foundry.

Passo 9: Configurar o modelo de linguagem do Microsoft Foundry

No Microsoft Foundry, atribua uma quota de implementação superior a 1.000.000 de tokens por minuto (TPM). O seguinte exemplo de implementação está configurado para 2,3 milhões de TPM; a quota disponível mostrada é específica para esse ambiente.

Captura de ecrã dos detalhes da implementação do Microsoft Foundry com o Limite de Taxa de Tokens por Minuto definido para 2,3 milhões.

Volte ao assistente de migração no Visual Studio Code para configurar a ligação ao modelo:

  1. Insira os seus dados do Microsoft Foundry:
    • URL do endpoint.
    • Nome da implementação (o nome que atribuiu à implementação no Microsoft Foundry; o modelo subjacente deve ser gpt-5.2).
  2. Selecione o método de autenticação:
    • Chave de API: Introduza a chave de API para a sua implementação do Microsoft Foundry.
    • Microsoft Entra ID: Iniciar sessão com a extensão da conta Azure. A ferramenta adquire automaticamente o token de autenticação. Certifique-se de que a identidade com sessão iniciada tem a função Foundry User (anteriormente Azure AI User) no recurso do Microsoft Foundry. Para mais informações, consulte Controlo de acesso baseado em funções para Microsoft Foundry.
  3. Selecione Testar Ligação Microsoft Foundry para verificar a configuração.
  4. Depois de a ligação ser estabelecida, selecione Criar Projeto de Migração.

Passo 10: Execute a conversão do esquema

  1. O sistema navega até ao Assistente de Migração principal.

  2. Selecione Migrar para iniciar o processo de conversão de esquema.

  3. Monitorize o progresso da conversão na interface do Visual Studio Code.

  4. Quando a conversão termina, o projeto mostra que a conversão de esquema está concluída e a ação Rever resumo da conversão.

    Captura de ecrã da conversão de esquema concluída com extração e progresso da conversão e revisão do resumo da conversão.

Passo 11: Rever o relatório de conversão de esquemas

  1. Após a conclusão da conversão do esquema, o relatório de conversão HTML abre automaticamente.
  2. Revise os resultados de descoberta, extração e conversão e as notas ao nível do objeto.
  3. Para orientações sobre a interpretação do relatório, consulte Visualizar o relatório HTML para conversão de esquemas da Oracle.

Passo 12: Reveja e refine os objetos convertidos

  1. A partir do projeto de migração concluído, selecione Rever resumo de conversão.

    Captura de ecrã do resumo de Conversão com contagens de objetos e ações para o explorador de objetos de Conversão, relatório de Conversão e instruções de Configuração.

  2. Na página Resumo da conversão, selecione Explorador de objetos de conversão.

    Captura de ecrã do Conversion Object Explorer com objetos de origem e destino, estados e ações de Perguntar e Corrigir.

  3. Selecione um objeto para comparar as suas definições Oracle e PostgreSQL e leia as suas notas de conversão.

    Captura de ecrã das definições Oracle e PostgreSQL lado a lado com notas de conversão.

  4. Use o Ask para explicar a conversão e as suas dependências, ou o Fix para abrir um pedido ao Copilot e fazer alterações ao ficheiro PostgreSQL.

  5. Revise as edições e confirme se o SQL de implementação inclui as correções que pretende implementar. Não presuma que editar um ficheiro por objeto atualiza o arquivo gerado deploy.sql.

Para passos de filtragem, comparação e compilação manual, consulte Revisar objetos convertidos no Conversion Object Explorer.

Passo 13: Preparar a implementação com o Setup Experience

O fluxo de trabalho de conversão gera automaticamente ficheiros de configuração quando termina. Abrir as instruções de configuração não inicia uma implementação.

  1. No projeto de migração concluído, selecione Rever resumo de conversão.
  2. Na página de resumo de Conversão, selecione Instruções de configuração. Esta ação fica disponível quando os ficheiros de configuração estão prontos.
  3. Revise o ficheiro gerado setup_instructions.md , que abre no editor. O Visual Studio Code também revela a pasta de configuração no Explorador.
  4. Siga os esquemas convertidos Deploy com a Experiência de Configuração para preparar uma base de dados de destino não produtiva separada, executar verificações de prontidão, implementar os esquemas convertidos e rever os resultados da implementação.

Passo 14: Validar o esquema implementado antes da utilização em produção

Use a base de dados não de produção implementada no passo anterior para validação funcional, de dados e de aplicação, e não a base de dados scratch de conversão.

Se alterar um objeto após a implementação, aplique a correção manualmente:

  1. Ligue o editor SQL ao servidor PostgreSQL não produtivo e à base de dados onde o esquema convertido foi implementado. Confirma a base de dados ativa do editor.
  2. Revise as referências de esquemas e selecione a instrução ou instruções completas que pretende executar.
  3. Selecione o botão de reprodução para executar apenas as instruções selecionadas. Revise a saída de execução e resolva erros antes de continuar.
  4. Confirme que os ficheiros objeto e o SQL de implementação contêm as correções testadas antes da implementação em produção. Atualizar um ficheiro, atualizar um objeto implantado e atualizar deploy.sql são ações separadas.

Validar de forma independente o esquema implementado com dados de teste representativos e cargas de trabalho da aplicação. Verifique dependências, restrições, lógica de negócio e conjuntos de resultados com a fonte da Oracle, e volte a testar após correções. Revise quaisquer objetos que não tenham sido convertidos ou implementados, em vez de testar apenas conversões bem-sucedidas.

Importante

Responsabilidade pela validação do cliente: O mesmo motor de IA usado para conversão de esquemas também pode ajudar na validação e revisão. Os sistemas de IA podem, por vezes, confirmar os seus próprios erros. Para evitar perda de dados, regressões funcionais ou problemas de segurança, valide de forma independente todos os objetos convertidos e as correções ao nível do objeto antes de implementar para produção. Como parte dos seus controlos, considere ativar o filtragem de conteúdos do Microsoft Foundry para ajudar a reduzir resultados prejudiciais ou indesejados. Para orientação, veja Filtragem de conteúdo para Microsoft Foundry Models.

Para mais informações sobre a extensão Visual Studio Code, visite a extensão PostgreSQL para Visual Studio Code e Cursor.