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 da base de dados Oracle para Base de Dados do Azure para PostgreSQL, utilizando a extensão Visual Studio Code PostgreSQL com o Microsoft Foundry para automatizar e validar a tradução de esquemas.

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.
  • Validação: Os objetos convertidos são validados na base de dados temporária.
  • Tarefas de rever: Objetos que exigem atenção manual são assinalados.
  • 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 executares a conversão do esquema, certifica-te de que as contas que utilizas têm os privilégios mínimos exigidos tanto na base de dados Oracle de origem como no servidor flexível Base de Dados do Azure para PostgreSQL temporário. A conta Oracle precisa de acesso de leitura a dados e vistas de dicionário para que a ferramenta possa analisar esquemas e códigos. A conta scratch do Base de Dados do Azure para PostgreSQL deve ser capaz de criar esquemas, tabelas e outros objetos para validação. Use uma conta de serviço dedicada sempre que possível. Siga o princípio do menor privilégio. Coordena com os teus DBAs para conceder quaisquer direitos temporários elevados e validar a conectividade e o acesso antes de iniciares a conversão.

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

Privilégios de base de dados temporária

Os seguintes privilégios são exigidos no servidor flexível Base de Dados do Azure para PostgreSQL (base de dados scratch):

Privilégio Purpose
CRIAR ESQUEMA Criar esquemas de validação
CRIAR NA BASE DE DADOS Criar objetos de base de dados para validação
GRANT CONNECT À BASE DE DADOS Permissões de ligação para processos de 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 percorre todo o fluxo de trabalho de migração. Instala a extensão PostgreSQL, cria e testa ligações à sua fonte Oracle e ao destino do Base de Dados do Azure para PostgreSQL, abre e inicializa um projeto de migração, configura o Microsoft Foundry para tradução de esquemas, executa o Assistente de Migração para descobrir e converter esquemas, valida objetos convertidos numa base de dados inicial e revê ou corrige quaisquer itens sinalizados antes de aplicar o artefactos PostgreSQL gerados para o seu destino.

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 Seguinte para continuar.

    Captura de ecrã da configuração de um servidor Oracle.

Passo 7: Configurar uma base de dados temporária no Base de Dados do Azure para PostgreSQL

  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 Seguinte para continuar.

    Captura de ecrã de configurar uma base de dados scratch.

Passo 8: Configurar o modelo de linguagem do Microsoft Foundry

  1. Introduza os detalhes 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 para verificar a configuração.

  4. Depois de a ligação ser estabelecida, selecione Criar Projeto de Migração.

    Captura de ecrã da configuração do modelo de linguagem.

Passo 9: 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.

    Captura de ecrã do progresso do passo de migração.

Passo 10: Rever o relatório de conversão de esquema

  1. Após a conclusão da conversão de esquema, a ferramenta gera um relatório de conversão de esquema.
  2. Revise os objetos que foram convertidos com sucesso e os que foram saltados.
  3. O relatório mostra a percentagem de sucesso da conversão.

Passo 11: Rever e refinar as tarefas de conversão

  1. Após a conclusão da conversão do esquema, a ferramenta cria tarefas de revisão para objetos que necessitam de atenção.
  2. Utilize o modo de agente do GitHub Copilot para resolver as tarefas ou converta manualmente os esquemas para PostgreSQL.
  3. Compare as instruções de conversão de esquema anteriores e as recentemente convertidas.
  4. Para mais informações sobre prioridades de tarefas, ficheiros SQL gerados e pastas de saída, consulte Rever tarefas e pastas de saída para Oracle to Base de Dados do Azure para PostgreSQL conversão flexível de esquema de servidor.

Passo 12: Validar objetos convertidos antes da implementação

  1. Validar independentemente todos os objetos convertidos num ambiente não produtivo.
  2. Confirme que dependências, restrições e cargas de trabalho representativas se comportam como esperado.
  3. Revê as resoluções de todas as tarefas de revisão e retesta após as alterações.

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 reveja as resoluções das tarefas 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.