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:

    Screenshot that shows the Create/Select database option.

  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

    Screenshot that shows the interface for creating an inventory database.

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

    Screenshot that shows the Collect inventory data link.

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

    Screenshot that shows the Inventory Scenarios page of the Inventory and Assessment Wizard.

  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:

    Screenshot that shows the Discovery Methods page of the Inventory and Assessment Wizard.

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

    Screenshot that shows the All Computers Credentials page of the Inventory and Assessment Wizard.

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

    Screenshot that shows the Credentials Order page of the Inventory and Assessment Wizard.

  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.

    Screenshot that shows the Specify Computers and Credentials page of the Inventory and Assessment Wizard.

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

    Screenshot that shows the Summary page of the Inventory and Assessment Wizard.

  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:

    Screenshot that shows the Data Collection summary.

  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:

    Screenshot that shows the New Project dialog box.

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

    Screenshot that shows the Connect to Oracle dialog box.

    Selecione os esquemas Oracle que você deseja migrar:

    Screenshot that shows the list of Oracle schemas that can be migrated.

  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.

    Screenshot that shows how to create a report.

  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\

    Screenshot that shows a conversion report.

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.

    Screenshot that shows the Type Mappings tab.

  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.

    Screenshot that shows how to connect to 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:

    Screenshot that shows how to convert the schema.

  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:

    Screenshot that shows a comparison of two schemas.

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

    Screenshot that shows Transact-SQL, stored procedures, and a warning.

    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.

    Screenshot that shows the Synchronize with Database command.

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

    Screenshot that shows the synchronization status.

  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.

    Screenshot that shows the Migrate Data command.

  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:

    Screenshot that shows the Data Migration Report.

  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:

    Screenshot that shows a SQL Server instance in 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.

    Screenshot that shows new test case.

  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.

    Screenshot that shows step to initialize a test case.

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

    Screenshot that shows step to select and configure object.

    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.

    Screenshot that shows step to select and configure affected object.

    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.

    Screenshot that shows step to sequence test object execution.

  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.

    Screenshot that shows step to finalize object.

    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.

    Screenshot that shows step to test repo.

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”.

    Screenshot that shows to review test repo.

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

    Screenshot that shows step to launch test case.

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

    Screenshot that shows step to connect to oracle source.

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

    Screenshot that shows step to connect to sql target.

    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.

    Screenshot that shows tester test progress.

  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.

    Screenshot that shows a sample tester test report

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

    Exemplo de validação de dados positivos.

    Screenshot that shows a sample tester success report.

    Exemplo de validação de dados com falha.

    Screenshot that shows tester failure report.

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