Guia de migração: Oracle para SQL Server em máquinas virtuais do Azure

Aplica-se a: Banco de Dados SQL do Azure

Este guia ensina a migrar seus esquemas do Oracle para o SQL Server em Máquinas Virtuais do Azure usando o Assistente de Migração do SQL Server para Oracle.

Para obter outros guias de migração, confira Migração de banco de dados.

Pré-requisitos

Para migrar seu esquema Oracle para SQL Server em máquinas virtuais do Azure, você precisa de:

Pré-migração

Para preparar-se para migrar para a nuvem, verifique se o seu ambiente de origem tem suporte e se você resolveu todos os pré-requisitos. Isso ajudará a garantir uma migração eficiente e bem-sucedida.

Essa parte do processo envolve:

  • Realizar um inventário dos bancos de dados que você precisa migrar.
  • Avaliar esses bancos de dados quanto a possíveis problemas de migração ou bloqueadores.
  • Resolver todos os problemas que você descobrir.

Descobrir

Use o MAP Toolkit para identificar as fontes de dados e os detalhes sobre os recursos que sua empresa está usando. Com isso, você entenderá melhor a migração e poderá planejá-la mais adequadamente. Esse processo envolve a verificação da rede para identificar as instâncias do Oracle da sua organização e as versões e os recursos que você está usando.

Para usar o MAP Toolkit para realizar uma verificação de inventário, siga estas etapas:

  1. Abra o MAP Toolkit.

  2. Selecione Criar/Selecionar banco de dados:

    Captura de tela que mostra a opção Criar/Selecionar do banco de dados.

  3. Selecione Criar um banco de dados de inventário. Insira o nome do novo banco de dados de inventário e uma breve descrição e selecione OK

    Captura de tela que mostra a interface para criar um banco de dados de inventário.

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

    Captura de tela que mostra o link coletar dados de inventário.

  5. No Assistente de Inventário e Avaliação, selecione Oracle e Avançar:

    Captura de tela que mostra a página Cenários de Inventário do Assistente de Inventário e Avaliação.

  6. Selecione a opção de pesquisa de computador mais adequada às suas necessidades de negócios e ao seu ambiente e escolha Avançar:

    Captura de tela que mostra a página Métodos de Descoberta do Assistente de Inventário e Avaliação.

  7. Insira as credenciais ou crie credenciais para os sistemas que você deseja explorar. Em seguida, clique em Avançar:

    Captura de tela que mostra a página Credenciais de Todos os Computadores do Assistente de Inventário e Avaliação.

  8. Defina a ordem das credenciais e clique em Avançar:

    Captura de tela que mostra a página Ordem das Credenciais do Assistente de Inventário e Avaliação.

  9. Insira as credenciais para cada computador que você deseja descobrir. É possível usar credenciais exclusivas para todos os computadores/máquinas ou usar a lista Todas as Credenciais do Computador.

    Captura de tela que mostra a página Especificar Computadores e Credenciais do Assistente de Inventário e Avaliação.

  10. Verifique suas seleções e selecione Concluir:

    Captura de tela que mostra a página Resumo do Assistente de Inventário e Avaliação.

  11. Depois que a verificação for concluída, veja o resumo da Coleta de Dados. A verificação pode levar alguns minutos, dependendo do número de bancos de dados. Selecione Fechar ao terminar:

    Captura de tela que mostra o resumo da 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 o Assistente de Migração do SQL Server para Oracle para avaliar as instâncias do Oracle que fazem a migração para a VM do SQL Server. O assistente o ajudará a entender as lacunas entre os bancos de dados de origem e de destino. Você pode examinar objetos e dados de banco de dados, avaliar bancos de dados para migração, migrar objetos de banco de dados para o SQL Server e migrar os dados para o SQL Server.

Para criar uma avaliação, siga estas etapas:

  1. Abra o Assistente de Migração do SQL Server para Oracle.

  2. No menu Arquivo, selecione Novo Projeto.

  3. Forneça um nome de projeto e uma localização para seu projeto e depois selecione um destino de migração do SQL Server na lista. Selecione OK:

    Captura de tela que mostra a caixa de diálogo Novo Projeto.

  4. Selecione Conectar-se à Oracle. Insira valores para a conexão Oracle na caixa de diálogo Conectar-se ao Oracle:

    Captura de tela que mostra a caixa de diálogo Conectar-se ao Oracle.

    Selecione os esquemas Oracle que você deseja migrar:

    Captura de tela que mostra a lista de esquemas Oracle que podem ser migrados.

  5. No Gerenciador de Metadados Oracle, clique com o botão direito do mouse no esquema Oracle que você deseja migrar e selecione Criar Relatório. Fazer isso gera um relatório HTML. Ou, você pode selecionar o banco de dados e, em seguida, selecionar Criar um relatório no menu superior.

    Captura de tela mostra como criar um relatório.

  6. Examine o relatório HTML quanto a estatísticas de conversão, erros e avisos. Analise-o para entender problemas e resoluções de conversão.

    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 concluir as conversões de esquema. A localização padrão para o relatório é a pasta de relatório em SSMAProjects.

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

    Captura de tela que mostra um relatório de conversão.

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, siga estas etapas:

  1. No menu Ferramentas, selecione Configurações do Projeto.

  2. Selecione a guia Mapeamentos de Tipo.

    Captura de tela que mostra a guia Mapeamentos de Tipo.

  3. Você pode alterar o mapeamento de tipo de cada tabela selecionando a tabela no Gerenciador de Metadados do Oracle.

Converter o esquema

Para converter o esquema, siga estas etapas:

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

  2. Selecione Conectar-se ao SQL Server no menu superior.

    1. Insira os detalhes de conexão para seu SQL Server na VM do Azure.
    2. Selecione o banco de dados de destino na lista ou forneça um novo nome. Se você fornecer um novo nome, um banco de dados será criado no servidor de destino.
    3. Insira as informações de autenticação.
    4. Selecione Conectar.

    Captura de tela que mostra como se conectar ao SQL Server.

  3. Clique com o botão direito do mouse no esquema Oracle no Gerenciador de metadados Oracle e selecione Converter Esquema. Ou, você pode selecionar Converter esquema no menu superior:

    Captura de tela que mostra como converter o esquema.

  4. Após a conclusão da conversão do esquema, examine os objetos convertidos e compare-os aos objetos originais para identificar possíveis problemas. Use as recomendações para resolver todos os problemas:

    Captura de tela que mostra uma comparação de dois esquemas.

    Compare o texto Transact-SQL convertido com os procedimentos armazenados originais e analise as recomendações:

    Captura de tela que mostra o Transact-SQL, procedimentos armazenados e um aviso.

    Você pode salvar o projeto localmente para realizar um exercício de correção de esquema offline. Para fazer isso, selecione Salvar Projeto no menu Arquivo. Salvar o projeto localmente permite a você avaliar os esquemas de origem e de destino offline e executar a correção antes de publicar o esquema no SQL Server.

  5. Selecione Examinar resultados no painel Saída e examine os erros no painel Lista de erros.

  6. Salve o projeto localmente para realizar um exercício de correção de esquema offline. Selecione Salvar Projeto no menu Arquivo. Isso dá a você a oportunidade de avaliar os esquemas de origem e de destino offline e executar a correção antes de publicar o esquema no SQL Server em Máquinas Virtuais do Azure.

Migrar

Depois de implementar os pré-requisitos necessários e concluir as tarefas associadas à fase de pré-migração, você já poderá começar a migração de dados e de esquema. A migração envolve duas etapas: publicação do esquema e migração dos dados.

Para publicar um esquema e migrar os dados, siga estas etapas:

  1. Publicar o esquema: clique com o botão direito do mouse no banco de dados no Gerenciador de Metadados do SQL Server e selecione Sincronizar com o Banco de Dados. Isso publica o esquema Oracle para o SQL Server em Máquinas Virtuais do Azure.

    Captura de tela que mostra o comando Sincronizar com o Banco de Dados.

    Examine o mapeamento entre o projeto de origem e o destino:

    Captura de tela que mostra o status de sincronização.

  2. Migre os dados: clique com o botão direito do mouse no objeto ou banco de dados que você deseja migrar no Gerenciador de Metadados do Oracle e selecione Migrar Dados. Ou, você pode selecionar a guia Migrar Dados. Para migrar dados para um banco de dados 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, expanda Tabelas e marque as caixas de seleção ao lado das tabelas. Para omitir dados de tabelas individuais, desmarque as caixas de seleção.

    Captura de tela que mostra o comando Migrar Dados.

  3. Forneça detalhes de conexão para Oracle e SQL Server em Máquinas Virtuais do Azure na caixa de diálogo.

  4. Depois de concluída a migração, veja o Relatório de Migração de Dados:

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

  5. Conecte-se ao seu SQL Server na instância de Máquinas Virtuais do Azure usando o SQL Server Management Studio. Analise os dados e o esquema para validar a migração:

    Captura de tela que mostra uma instância do SQL Server no SSMA.

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 a fase de migração, é preciso realizar uma série de tarefas pós-migração para garantir que tudo está funcionando da maneira mais estável e eficiente possível.

Corrigir aplicativos

Depois que os dados são migrados para o ambiente de destino, todos os aplicativos que antes consumiam a origem, precisam começar a consumir o destino. Fazer essas alterações pode exigir alterações nos aplicativos.

O Data Access Migration Toolkit é uma extensão para o Visual Studio Code. Ele permite que você analise seu código-fonte Java e detecte as consultas e chamadas à API de acesso a dados. O kit de ferramentas fornece uma exibição de painel único do que precisa ser resolvido para dar suporte ao novo back-end de banco de dados. Para saber mais, confira Migrar seu aplicativo Java do Oracle.

Executar testes

Para testar a migração do banco de dados, conclua estas atividades:

  1. Desenvolver testes de validação. Para testar a migração do banco de dados, você precisa usar consultas SQL. Crie consultas de validação para execução nos bancos de dados de origem e de destino. As consultas de validação devem abranger o escopo que você definiu.

  2. Configurar um ambiente de teste. O ambiente de teste deve conter uma cópia do banco de dados de origem e do banco de dados 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, em seguida, analise os resultados.

  4. Executar testes de desempenho. Execute o teste de desempenho na origem e no destino e, em seguida, analise e compare os resultados.

Validar objetos migrados

O Assistente de Migração do Microsoft SQL Server para Testador Oracle (Testador SSMA) permite testar os objetos de banco de dados migrados. O Testador SSMA é usado para verificar se os objetos convertidos se comportam da mesma forma.

Criar caso de teste

  1. Abra SSMA para Oracle, selecione Testador seguido por Novo Caso de Teste.

    Captura de tela mostrando um novo caso de teste.

  2. No assistente de Caso de Teste, forneça as seguintes informações:

    Nome: insira o nome para identificar o caso de teste.

    Data de criação: a data atual do dia, definida automaticamente.

    Data da última modificação: preenchida automaticamente, não deve ser alterada.

    Descrição: insira informações adicionais para identificar o propósito do caso de teste.

    Captura de tela mostrando a etapa para inicializar um caso de teste.

  3. Selecione os objetos que fazem parte do caso de teste na árvore de objetos Oracle localizada no lado esquerdo.

    Captura de tela que mostra a etapa para selecionar e configurar o objeto.

    Neste exemplo, o procedimento armazenado ADD_REGION e a tabela REGION são selecionados.

    Para saber mais, confira Selecionar e configurar objetos a testar.

  4. Em seguida, selecione as tabelas, chaves estrangeiras e outros objetos dependentes da árvore de objetos Oracle na janela esquerda.

    Captura de tela mostrando a etapa para selecionar e configurar o objeto afetado.

    Para saber mais, confira Selecionar e configurar objetos afetados.

  5. Examine a sequência de avaliação de objetos. Clique nos botões da grade para alterar a ordem.

    Captura de tela que mostra a etapa para sequenciar a execução do objeto de teste.

  6. Examine as informações fornecidas nas etapas anteriores para finalizar o caso de teste. Configure as opções de execução de teste com base no cenário de teste.

    Captura de tela mostrando a etapa para finalizar o objeto.

    Para saber mais sobre as configurações de casos de teste, confira Concluir a preparação de um caso de teste

  7. Clique em Concluir para criar o caso de teste.

    Captura de tela que mostra a etapa para repositório de teste.

Executar caso de teste

Quando o Testador SSMA executa um caso de teste, o mecanismo de teste executa os objetos selecionados para teste e gera um relatório de verificação.

  1. Selecione o caso de teste no repositório de teste e clique em “Executar”.

    Captura de tela mostrando a análise do repositório de teste.

  2. Analise a inicialização do caso de teste e clique em “Executar”.

    Captura de tela mostrando a etapa para iniciar o caso de teste.

  3. Em seguida, forneça as credenciais de origem do Oracle. Clique em “Conectar” após inserir as credenciais.

    Captura de tela mostrando a etapa de conexão com a origem do Oracle.

  4. Forneça as credenciais do SQL Server de destino e clique em “Conectar”.

    Captura de tela mostrando a etapa de conexão com o destino do SQL.

    Em caso de êxito, o caso de teste passará para o estágio de inicialização.

  5. Uma barra de progresso em tempo real mostra o status da execução de teste.

    Captura de tela que mostra o progresso do teste do testador.

  6. Examine o relatório após concluir o teste. O relatório fornece as estatísticas, os erros durante a execução de teste e um relatório detalhado.

    Captura de tela que mostra um exemplo de relatório de teste do testador.

  7. Clique em “Detalhes” para obter mais informações.

    Exemplo de validação de dados positivos.

    Captura de tela que mostra um exemplo de relatório com sucesso do testador.

    Exemplo de validação de dados com falha.

    Captura de tela que mostra o relatório de falha do testador.

Otimizar

A fase pós-migração é crucial para reconciliar todos os problemas com a precisão de dados e verificar a integridade. Também é crítico para resolver problemas de desempenho com a carga de trabalho.

Observação

Para obter mais informações sobre esses problemas e etapas específicas para atenuá-los, confira o Guia de validação e otimização após a migração.

Recursos de migração

Para obter mais ajuda com a conclusão desse cenário de migração, confira os recursos a seguir, que foram desenvolvidos para dar suporte a um projeto de migração do mundo real.

Título/link Descrição
Modelo e Ferramenta de Avaliação de Carga de Trabalho de Dados Essa ferramenta dá sugestão das plataformas de destino de melhor ajuste, da preparação para a nuvem e do nível de correção de aplicativo/banco de dados para uma determinada carga de trabalho. Ela oferece cálculo simples, com um só clique, e permite gerar relatórios que ajudam a acelerar avaliações de grandes volumes fornecendo um processo de decisão de plataforma de destino uniforme e automatizado.
Artefatos de script de inventário do Oracle Esse ativo inclui uma consulta PL/SQL que tem como alvo 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 dos dados brutos e o dimensionamento de tabelas em cada esquema, com resultados armazenados em formato CSV.
Automatizar a Coleta e Fusão de Avaliação da Oracle do SSMA Esse conjunto de recursos usa um arquivo .csv como entrada (sources.csv nas pastas do projeto) para produzir os arquivos XML necessários para executar uma avaliação do SSMA no modo de console. Você fornece o arquivo source.csv fazendo um inventário das instâncias existentes do Oracle. 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 Com o Oracle, você pode atribuir uma condição não escalar em uma cláusula WHERE. O SQL Server não dá suporte a esse tipo de condição. Portanto, o SSMA para Oracle não converte consultas que tenham uma condição não escalar na cláusula WHERE. Em vez disso, ele gera um erro: O2SS0001. Este white paper fornece detalhes sobre o problema e maneiras de resolvê-lo.
Manual de migração do Oracle para SQL Server Este documento se concentra nas tarefas associadas à migração de um esquema do Oracle para a versão mais recente do SQL Server. Se a migração exigir alterações nos recursos/funcionalidades, será preciso considerar com cuidado o possível efeito de cada alteração aos aplicativos que usam o banco de dados.
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.

Próximas etapas