Compartilhar via


Planejar e testar o plano de atualização do Mecanismo de Banco de Dados

Aplica-se a: SQL Server - somente Windows

Para executar uma atualização bem-sucedida do SQL Server , independentemente da abordagem, o planejamento apropriado é obrigatório.

Notas de versão e problemas de upgrade conhecidos

Antes de fazer upgrade do Mecanismo de Banco de Dados, examine:

Lista de verificação de planejamento pré-upgrade

Antes de atualizar o Mecanismo de Banco de Dados, examine a seguinte lista de verificação e os artigos associados. Estes artigos aplicam-se a todas as atualizações, independentemente do método de atualização, além de ajudar você a determinar o método de atualização mais apropriado: Atualização sem interrupção, atualização de nova instalação ou atualização in-loco. Por exemplo, talvez você não possa executar uma atualização in-loco ou uma atualização sem interrupção se atualizar o sistema operacional, atualizando do SQL Server 2005 (9.x) ou atualizando de uma versão de 32 bits do SQL Server. Para ver uma árvore de decisão, confira Choose a Database Engine Upgrade Method.

  • Requisitos de hardware e software: examine os requisitos de hardware e software para a instalação do SQL Server. Esses requisitos podem ser encontrados em: Requisitos de hardware e software para a instalação do SQL Server. Uma parte de qualquer ciclo de planejamento de atualização é considerar a atualização do hardware e do sistema operacional. O hardware mais recente é mais rápido e pode reduzir o licenciamento devido a menos processadores ou à consolidação de banco de dados e servidores. Esses tipos de alteração de hardware e software afetam o tipo de método de atualização que você escolhe.

  • Ambiente atual: pesquise seu ambiente atual para entender os componentes do SQL Server que estão sendo usados e os clientes que se conectam ao seu ambiente.

    • Provedores de cliente: embora a atualização não exija que você atualize o provedor de cada um de seus clientes, você pode optar por fazer isso. Se você atualizar do SQL Server 2014 (12.x) ou anterior, os seguintes recursos do SQL Server 2016 (13.x) exigirão um provedor atualizado para cada cliente ou o provedor atualizado fornecerá funcionalidade adicional:

    • Always Encrypted (mecanismo de banco de dados)

    • Stretch Database

      Importante

      O banco de dados de ampliação foi preterido no SQL Server 2022 (16.x) e no Banco de Dados SQL do Azure. Esse recurso será removido em uma versão futura do mecanismo de banco de dados. Evite usar esse recurso em desenvolvimentos novos e planeje modificar os aplicativos que atualmente o utilizam.

    • Ouvintes do grupo de disponibilidade, conectividade de cliente e failover de aplicativo (SQL Server)

    • Atualização de segurança do TLS

  • Componentes de terceiros: determine a compatibilidade de componentes de terceiros, como backup integrado.

  • Ambiente de destino: verifique se seu ambiente de destino atende aos requisitos de hardware e software e se pode dar suporte aos requisitos do sistema original. Por exemplo, a atualização poderia envolver a consolidação de várias instâncias do SQL Server em um instância única e nova do SQL Server ou a virtualização do ambiente do SQL Server em uma nuvem privada ou pública.

  • Edição: determine a edição apropriada do SQL Server para a sua atualização, bem como os caminhos de atualização válidos para a atualização. Para obter informações detalhadas, consulte Supported Version and Edition Upgrades. Antes de atualizar de uma edição do SQL Server para outra, verifique se há suporte à funcionalidade usada atualmente na edição para a qual está atualizando.

    Observação

    Quando você atualizar o SQL Server de uma versão anterior da edição do SQL Server Enterprise, escolha entre Enterprise Edition: Licenciamento baseado em núcleo e Enterprise Edition. Estas edições Enterprise só diferem com relação aos modos de licenciamento. Para saber mais, confira Compute Capacity Limits by Edition of SQL Server.

  • Compatibilidade com versões anteriores: leia o artigo sobre compatibilidade com versões anteriores do mecanismo de banco de dados do SQL Server para examinar as alterações no comportamento entre o SQL Server e a versão do SQL Server da qual você atualizar. Consulte SQL Server Database Engine Backward Compatibility.

  • Assistente de Migração de Dados: execute o Assistente de Migração de Dados para auxiliar no diagnóstico de problemas que podem bloquear o processo de atualização ou exigir modificação em scripts ou aplicativos existentes devido a uma alteração da falha.

    Você pode baixar o Assistente de Migração de Dados aqui.

  • Verificador de configuração do sistema: execute o SCC (Verificador de Configuração do Sistema) do SQL Server para determinar se o programa de instalação do SQL Server detecta todos os problemas de bloqueio antes de você agendar a atualização. Para obter mais informações, consulte Check Parameters for the System Configuration Checker.

  • Atualizar tabelas com otimização de memória: ao atualizar uma instância do SQL Server 2014 (12.x) contendo tabelas com otimização de memória para o SQL Server 2016 (13.x) e versões posteriores, o processo de atualização exige mais tempo para converter as tabelas com otimização de memória no novo formato em disco. Durante esse processo, o banco de dados fica offline. A quantidade de tempo depende do tamanho das tabelas com otimização de memória e da velocidade do subsistema de E/S. A atualização exige três tamanhos de operações de dados para atualizações de instalação nova e in-loco (a etapa 1 não é necessária para atualizações sem interrupção, mas as etapas 2 e 3 são obrigatórias):

    1. Execute a recuperação de banco de dados usando o formato em disco antigo (incluindo carregar todos os dados em tabelas com otimização de memória do disco na memória)

    2. Serialize os dados no disco no novo formato em disco

    3. Execute a recuperação de banco de dados usando o novo formato (incluindo carregar todos os dados em tabelas com otimização de memória do disco na memória)

      Além disso, espaço insuficiente em disco durante esse processo causa a falha da recuperação. Verifique se há espaço suficiente em disco para armazenar o banco de dados existente mais armazenamento extra igual ao tamanho atual dos contêineres no grupo de arquivos MEMORY_OPTIMIZED_DATA no banco de dados para realizar uma atualização in-loco ou ao anexar um banco de dados SQL Server 2014 (12.x) a uma instância do SQL Server 2016 (13.x) ou versão posterior. Use a consulta a seguir para determinar o espaço em disco atualmente necessário para o grupo de arquivos MEMORY_OPTIMIZED_DATA e, consequentemente, também a quantidade de espaço livre em disco necessária para que a atualização seja bem-sucedida:

    SELECT CAST(SUM(size) AS FLOAT) * 8 / 1024 / 1024 AS [size in GB]
    FROM sys.database_files
    WHERE data_space_id IN
    (
        SELECT data_space_id
        FROM sys.filegroups
        WHERE type = N'FX'
    );
    

Desenvolver e testar o plano de upgrade

A melhor abordagem é tratar a atualização como trataria qualquer projeto de TI. Organize uma equipe de atualização que tenha a administração, a rede, ETL (extração, transformação e carregamento) e outras habilidades necessárias de banco de dados para a atualização. A equipe precisa:

  • Escolher o método de atualização: Veja Escolher um método de atualização do mecanismo de banco de dados.

  • Desenvolver um plano de reversão: executar esse plano permite que você restaure o ambiente original se precisar fazer uma reversão.

  • Determinar os critérios de aceitação: verifique se a atualização foi bem-sucedida antes de direcionar os usuários para o ambiente atualizado.

  • Testar o plano de atualização: para testar o desempenho usando a carga de trabalho real, use o utilitário Microsoft SQL Server Distributed Replay. Esse utilitário pode usar vários computadores para reproduzir dados de rastreamento, simulando uma carga de trabalho crítica à missão. Ao executar uma reprodução em um servidor de teste antes e depois de uma atualização do SQL Server, você pode medir diferenças de desempenho e procurar alguma incompatibilidade que seu aplicativo possa ter com a atualização. Para obter mais informações, consulte SQL Server Distributed Replay e Opções de linha de comando da ferramenta de administração (Distributed Replay Utility).