Compartilhar via


Guia de migração: Oracle para SQL Server

Aplica-se:SQL Server

Neste guia, você aprenderá a migrar seus bancos de dados do Oracle para o SQL Server usando o SSMA (Assistente de Migração do SQL Server) para Oracle.

Para obter outros guias de migração, confira Guias de Migração do Banco de Dados do Azure.

Para avaliação e conversão de código detalhadas, continue com o SSMA para Oracle.

Pré-requisitos

Antes de começar a migrar seu banco de dados do Oracle para SQL Server, realize as seguintes etapas:

Pré-migração

Ao se preparar para migrar para a nuvem, verifique se há suporte ao ambiente de origem e se você atende a todos os outros pré-requisitos. Isso ajuda a garantir uma migração eficiente e bem-sucedida.

Essa parte do processo envolve a realização de um inventário dos bancos de dados que você precisa migrar, avaliando-os quanto a possíveis problemas de migração ou bloqueadores e resolvendo quaisquer itens que você possa ter descoberto.

Descobrir

Para entender e planejar melhor a migração, use o MAP (Microsoft Assessment and Planning) Toolkit para identificar as fontes de dados existentes e os detalhes sobre os recursos que sua organização está usando. Esse processo envolve a verificação da rede para identificar todas as instâncias, versões e recursos do Oracle de sua organização.

Para usar o MAP Toolkit a fim de executar uma verificação de inventário, execute as seguintes etapas:

  1. Abra o MAP Toolkit.

  2. No painel Visão geral, selecione Criar/Selecionar banco de dados.

    Captura de tela do link

  3. Em Criar ou selecionar um banco de dados, selecione Criar um banco de dados de inventário, nomeie o banco de dados de inventário que você está criando, forneça uma breve descrição e selecione OK.

    Captura de tela da opção

  4. Selecione Coletar dados de inventário para abrir o Assistente de Inventário e Avaliação.

    Captura de tela do link

  5. No assistente, selecione Oracle e escolha Avançar.

    Captura de tela da opção do Oracle e do botão Avançar no Assistente de Inventário e Avaliação.

  6. Escolha a opção de pesquisa de computador mais adequada às necessidades e ao ambiente de sua organização e selecione Avançar.

    Captura de tela da lista de métodos de descoberta de computadores que melhor atendem às necessidades da sua organização.

  7. Insira as credenciais atuais ou crie outras para os sistemas que deseja explorar e selecione Avançar.

    Captura de tela do painel do assistente para inserir as credenciais do computador.

  8. Defina a ordem das credenciais e, em seguida, selecione Avançar.

    Captura de tela do painel do assistente para definir a ordem das credenciais.

  9. Especifique as credenciais para cada computador que você deseja descobrir. Você pode usar credenciais exclusivas para cada computador ou selecioná-las na lista de Computadores.

    Captura de tela da opção

  10. Verifique seu resumo de seleção e, em seguida, selecione Concluir.

    Captura de tela da página de resumo do assistente para examinar suas seleções.

  11. Depois que a verificação for concluída, observe o relatório resumido da Coleta de Dados. A verificação pode levar alguns minutos, dependendo do número de bancos de dados. Ao terminar, selecione Fechar.

    Captura de tela da página do relatório de resumo de Coleta de Dados.

  12. Selecione Opções para gerar um relatório sobre os detalhes da avaliação e do banco de dados do Oracle. Selecione ambas as opções (uma de cada vez) para gerar o relatório.

Avaliar

Depois de identificar as fontes de dados, use SSMA para Oracle a fim de avaliar a instância do Oracle que você está migrando para a máquina virtual do SQL Server e compreender as lacunas entre ambas. Com o assistente de migração, você pode examinar dados e objetos do banco de dados, avaliá-los para migração e migrar os objetos do banco de dados para o SQL Server e, então, migrar os dados para o SQL Server.

Para criar uma avaliação, realize as seguintes etapas:

  1. Abra o SSMA para Oracle.

  2. Selecione Arquivo e escolha Novo Projeto.

  3. Forneça um nome e local para o projeto e, na lista suspensa, selecione um destino de migração do SQL Server. Selecione OK.

    Captura de tela do painel Novo Projeto no SSMA para Oracle.

  4. Selecione Conectar ao Oracle, insira os detalhes da conexão Oracle e escolha Conectar.

    Captura de tela do painel Conectar ao Oracle.

  5. No painel Filtrar objetos, escolha os esquemas do Oracle que você deseja migrar e selecione OK.

    Captura de tela do painel

  6. No painel Gerenciador de Metadados do Oracle, selecione os esquemas do Oracle com os quais você está trabalhando e escolha Criar Relatório para gerar um relatório HTML com estatísticas de conversão e erros ou avisos, se houver. Você também pode selecionar a guia Criar Relatório no canto superior direito.

    Captura de tela dos links

  7. Examine o relatório HTML para entender as estatísticas de conversão e outros erros ou avisos. Também é possível abrir o relatório no Excel para ver um inventário de objetos da Oracle e o esforço necessário para executar as conversões de esquema. A pasta dentro de SSMAProjects é o local padrão de alocação de relatórios. Por exemplo:

    drive:\<username>\Documents\SSMAProjects\MyOracleMigration\report\report_2016_11_12T02_47_55\

    Captura de tela de um relatório de conversão no SSMA.

Validar tipos de dados

Valide os mapeamentos de tipo de dados padrão e altere-os com base nos requisitos, se necessário. Para fazer isso:

  1. Selecione Ferramentas e escolha Configurações do Projeto.

  2. Selecione a guia Mapeamento de Tipos.

    Captura de tela do painel

  3. Para alterar o mapeamento de tipo de cada tabela, selecione o nome da tabela no painel Gerenciador de Metadados do Oracle.

Converter esquema

Para converter o esquema, realize as seguintes etapas:

  1. (Opcional) Para converter consultas dinâmicas ou especializadas, clique com o botão direito do mouse sobre o nó e selecione Adicionar instrução.

  2. Selecione a guia Conectar ao SQL Server e insira os detalhes de conexão da instância do SQL Server.

    1. Na lista suspensa Banco de dados, selecione o banco de dados de destino ou forneça um novo nome para criar um banco de dados no servidor de destino.

    2. Insira as informações de autenticação.

    3. Selecione Conectar.

      Captura de tela do painel Conectar ao SQL Server no SSMA para Oracle.

  3. No painel do Gerenciador de Metadados do Oracle, clique com o botão direito do mouse sobre o esquema com o qual você está trabalhando e selecione Converter Esquema. Você também pode selecionar a guia Converter Esquema no canto superior direito.

    Captura de tela do comando

  4. Após a conclusão da conversão, compare os objetos convertidos em relação aos originais para identificar possíveis problemas e solucioná-los com base nas recomendações.

    Captura de tela mostrando uma comparação dos objetos convertidos com os objetos originais.

    Compare o texto Transact-SQL convertido com o código original e examine as recomendações.

    Captura de tela mostrando uma comparação do texto convertido com o código original.

  5. No painel de saída, selecione o ícone Examinar resultados e analise todos os erros no painel Lista de erros.

  6. Para conferir um exercício de correção de esquema offline, salve o projeto localmente selecionando Arquivo>Salvar Projeto. Isso dará a você a oportunidade de avaliar os esquemas de origem e destino offline e corrigi-los antes de publicá-los na instância do SQL Server.

Migrar banco de dados

Depois de atender aos pré-requisitos e concluir as tarefas associadas ao estágio pré-migração, você estará pronto para executar o esquema e a migração do banco de dados. A migração envolve duas etapas: publicação do esquema e migração do banco de dados.

Para publicar o esquema e migrar o banco de dados, realize as seguintes etapas:

  1. Publique o esquema. No painel Gerenciador de Metadados do SQL Server, clique com o botão direito do mouse sobre o banco de dados e selecione Sincronizar com o Banco de Dados. O esquema do Oracle será publicado na instância do SQL Server.

    Captura de tela do comando

  2. Examine o mapeamento entre o projeto de origem e destino, conforme mostrado aqui:

    Captura de tela do painel

  3. Migre os dados. No painel do Gerenciador de Metadados do Oracle, clique com o botão direito do mouse sobre o esquema ou objeto que você deseja migrar e selecione Migrar Dados. Você também pode selecionar a guia Migrar Dados no canto superior direito.

    Para migrar dados para um banco de dado inteiro, marque a caixa de seleção ao lado do nome do banco de dados. Para migrar dados de tabelas individuais, expanda o banco de dados e Tabelas e marque a caixa de seleção ao lado da tabela. Para omitir dados de tabelas individuais, desmarque a caixa de seleção.

    Captura de tela dos links de migração de dados.

  4. No painel Migrar Dados, insira os detalhes de conexão para o Oracle e o SQL Server.

  5. Depois de concluída a migração, exiba o Relatório de Migração de Dados.

    Captura de tela do Relatório de Migração de Dados.

  6. Conecte-se à instância do SQL Server usando o SQL Server Management Studio (SSMS) e valide a migração examinando os dados e o esquema.

    Captura de tela do SQL Server Management Studio.Além de usar o SSMA, você também pode usar o SSIS (SQL Server Integration Services) para migrar os dados. Para obter mais informações, consulte:

Pós-migração

Depois de concluir com êxito a fase de migração, você precisará realizar uma série de tarefas pós-migração para garantir que tudo esteja funcionando da maneira mais estável e eficiente possível.

Corrigir aplicativos

Depois de migrar os dados para o ambiente de destino, todos os aplicativos que anteriormente consumiam a origem precisarão começar a consumir o destino. A realização dessa etapa pode exigir alterações nos aplicativos.

O Data Access Migration Toolkit é uma extensão do Visual Studio Code com a qual você pode analisar seu código-fonte Java e detectar chamadas e consultas à API de acesso a dados. O Toolkit fornece uma exibição de um único painel de itens a serem abordados para dar suporte ao novo back-end do banco de dados. Para saber mais, confira o blog Migrar nosso aplicativo Java do Oracle.

Executar testes

A abordagem de teste para a migração de banco de dados consiste nas seguintes atividades:

  1. Desenvolver testes de validação: para testar a migração do banco de dados, é necessário usar consultas SQL. Crie as consultas de validação para executar nos bancos de dados de origem e de destino. Suas consultas de validação devem abranger o escopo que você definiu.

  2. Configurar ambiente de teste: o ambiente de teste deve conter uma cópia do banco de dados de origem e de destino. Lembre-se de isolar o ambiente de teste.

  3. Executar testes de validação: execute os testes de validação na origem e no destino e analise os resultados subsequentes.

  4. Executar testes de desempenho: execute os testes de desempenho na origem e no destino, analise e compare os resultados subsequentes.

Otimizar

A fase pós-migração é crucial para reconciliar quaisquer problemas com a precisão de dados, verificar a integridade e abordar problemas de desempenho com a carga de trabalho.

Para saber mais sobre esses problemas e sobre como mitigá-los, confira o Guia de validação e otimização pós-migração.

Ativos de migração

Para obter mais assistência a fim de concluir esse cenário de migração, confira os recursos a seguir. Eles foram desenvolvidos com base em um compromisso de projeto de migração no mundo real.

Título Descrição
Modelo e ferramenta de avaliação de carga de trabalho de dados Fornece sugestões de plataformas de destino "ideais", preparação para a nuvem e níveis de correção de aplicativo/banco de dados para cargas de trabalho especificadas. Oferece cálculos simples com um clique, além de geração de relatórios, para acelerar as avaliações de grandes volumes e fornecer um processo de decisão de plataforma de destino uniforme e automatizado.
Artefatos de script de inventário do Oracle Inclui uma consulta PL/SQL que afeta as tabelas do sistema Oracle e fornece uma contagem de objetos por tipo de esquema, tipo de objeto e status. Também fornece uma estimativa aproximada de "Dados Brutos" e o dimensionamento de tabelas em cada esquema, com resultados armazenados em um formato CSV.
Automatizar a coleta e consolidação de avaliações SSMA do Oracle Um conjunto de recursos que usa um arquivo .csv como entrada (sources.csv nas pastas do projeto) para produzir os arquivos xml necessários a fim de executar a avaliação do SSMA no modo de console. O arquivo source.csv é fornecido pelo cliente com base em um inventário de instâncias do Oracle existentes. Os arquivos de saída são AssessmentReportGeneration_source_1.xml, ServersConnectionFile.xml e VariableValueFile.xml.
Problemas com o SSMA e possíveis soluções ao migrar bancos de dados do Oracle Aborda como o Oracle permite que você atribua uma condição não escalar na cláusula WHERE. No entanto, o SQL Server não dá suporte a esse tipo de condição. Como resultado, o SSMA para Oracle não converte consultas com uma condição não escalar na cláusula WHERE; em vez disso, ele gera o erro O2SS0001. Este white paper fornece mais detalhes sobre o problema e as maneiras de resolvê-lo.
Manual de migração do Oracle para SQL Server Concentra-se nas tarefas associadas à migração de um esquema do Oracle para a versão mais recente da base do SQL Server. Se a migração exigir mudanças nos recursos e na funcionalidade, o possível efeito de cada mudança nos aplicativos que usam o banco de dados deverá ser considerado com cuidado.
Oracle para SQL Server – Utilitário de Comparação de Banco de Dados O Testador do SSMA para Oracle é a ferramenta recomendada para validar automaticamente a conversão de objetos de banco de dados e a migração de bancos e é um superconjunto de funcionalidades de Comparação de Banco de Dados.

Se você estiver procurando uma opção de validação de dados alternativa, use o utilitário Comparação de Banco de Dados para comparar dados no nível de linha ou coluna em todas as tabelas, linhas e colunas selecionadas.

A equipe de engenharia de dados do SQL desenvolveu esses recursos. A principal responsabilidade dessa equipe é desbloquear e acelerar a modernização complexa para projetos de migração da plataforma de dados para a plataforma de dados do Microsoft Azure.