Como o SQL Server 2012 saiu do suporte principal em 11 de julho de 2017 e o SQL Server 2014 sairá do suporte principal em 9 de julho de 2019, e como o SQL Server 2008 e o SQL Server 2008 R2 estarão fora do suporte estendido em 9 de julho de 2019, tive um número crescente de clientes que planejam atualizar dessas versões herdadas do SQL Server para uma versão mais moderna (2016 ou 2017).
Se você está considerando uma atualização para uma versão moderna do SQL Server, deve migrar para o SQL Server 2016 ou para o SQL Server 2017? Minha orientação geral seria preferir fortemente o SQL Server 2017 na maioria dos casos, a menos que você tenha um motivo válido e tangível para não fazê-lo. Por exemplo, se você tiver um software de terceiros que não seja explicitamente suportado no SQL Server 2017, isso pode ser um bloqueador (embora eu tente conversar com seu fornecedor de software sobre isso).
Então, por que você deve preferir o SQL Server 2017? Aqui estão uma série de razões em várias categorias diferentes.
Novos recursos de mecanismo no SQL Server 2017
Embora grande parte do trabalho de desenvolvimento no SQL Server 2017 tenha sido dedicado a criar uma versão que seja executada em várias distribuições Linux diferentes, ainda há vários novos recursos úteis do mecanismo no SQL Server 2017.
Um novo recurso útil é a Correção Automática de Plano (que depende do recurso Repositório de Consultas que foi introduzido no SQL Server 2016). Esse recurso ajuda a detectar e corrigir automaticamente muitos problemas de estabilidade do plano de consulta. Minha colega, Erin Stellato, escreveu sobre a correção automática de plano e como ela funciona no SQL Server 2017 Enterprise Edition e no Banco de Dados SQL do Azure com muito mais detalhes.
Outro novo recurso é o Adaptive Query Processing (AQP) (que é habilitado com o modo de compatibilidade 140), que é muito útil para operações de modo de lote usadas com índices Columnstore. O AQP tem três componentes, que incluem Feedback de concessão de memória adaptativa de modo de lote, junções adaptativas de modo de lote e execução intercalada para funções com valor de tabela de várias instruções.
Há também uma série de melhorias de diagnóstico e solução de problemas que tornam a vida de um DBA muito mais fácil! Isso inclui vários aprimoramentos do Showplan que são muito úteis para ajuste de consulta, juntamente com vários novos DMVs que são úteis para solução de problemas de diagnóstico. O Query Store é ainda mais eficiente no SQL Server 2017 em comparação com o SQL Server 2016.
Também houve vários aprimoramentos “orientados pela comunidade” no SQL Server 2017, como backup diferencial inteligente, backup de log de transações inteligente, desempenho de backup aprimorado para bancos de dados pequenos em servidores de ponta e diagnóstico e monitoramento de tempdb aprimorados.
Aprimoramentos de replicação
A Microsoft tornou possível proteger um banco de dados de distribuição remota em um Grupo de Disponibilidade com SQL Server 2017 CU6. Eles também adicionaram a capacidade de recarregar dinamicamente os parâmetros do perfil do agente de transação no SQL Server 2017 CU3. Isso torna muito mais fácil ajustar e manter sua topologia de replicação do que era no passado.
Suporte da Microsoft
Uma vez que uma versão principal do SQL Server cai fora do Suporte Mainstream, não há mais Service Packs ou Atualizações Cumulativas. Somente atualizações de segurança são lançadas enquanto a versão principal está no Suporte Estendido. Após o término do Suporte Estendido, não haverá mais atualizações, a menos que você adquira o Microsoft Premium Assurance (disponível apenas para SQL Server 2008 e mais recente).
Evidência recente dessa política é o fato de que a Microsoft não lançará um patch de segurança Spectre/Meltdown para SQL Server 2005. Assim que o Regulamento Geral de Proteção de Dados (GDPR) entrar em vigor em 25 de maio de 2018, as versões mais antigas do SQL Server serão mais vulneráveis ao longo do tempo à medida que saem do Suporte da Microsoft.
O SQL Server 2017 terá suporte total por cerca de 15 meses a mais do que o SQL Server 2016. A Microsoft tem uma página com muitos recursos sobre o fim do suporte para SQL Server 2008 e 2008 R2.
As datas de término do suporte principal e estendido para todas as versões recentes do SQL Server são mostradas na Tabela 1.
Versão do SQL Server | Fim do suporte principal | Fim do suporte estendido |
---|---|---|
SQL Server 2005 | 12 de abril de 2011 | 12 de abril de 2016 |
SQL Server 2008 SQL Server 2008 R2 | 8 de julho de 2014 | 9 de julho de 2019 |
SQL Server 2012 | 11 de julho de 2017 | 12 de julho de 2022 |
SQL Server 2014 | 9 de julho de 2019 | 9 de julho de 2024 |
SQL Server 2016 | 13 de julho de 2021 | 14 de julho de 2026 |
SQL Server 2017 | 11 de outubro de 2022 | 12 de outubro de 2027 |
Política de manutenção da Microsoft
O Microsoft SQL Server 2017 foi lançado em 2 de outubro de 2017 e, até agora, foram lançadas seis atualizações cumulativas do SQL Server 2017. A Microsoft adotou o que eles chamam de “Modern Servicing Model” para o SQL Server 2017, o que significa que não haverá Service Packs para o SQL Server 2017 ou versões futuras.
Em vez disso, haverá atualizações cumulativas mensais para o primeiro ano e, em seguida, atualizações cumulativas trimestrais para os próximos quatro anos. Isso significa que os defeitos serão corrigidos muito mais rapidamente durante o primeiro ano após o lançamento. O SQL Server 2017 foi lançado há tempo suficiente para considerá-lo bastante estável.
A Microsoft não apenas corrige defeitos específicos nas atualizações cumulativas, mas também lança novas funcionalidades e outras melhorias de produto, que muitas vezes são focadas em melhorar o desempenho. Aqui está a lista das atualizações e melhorias para o SQL Server 2017, a partir de CU6.
SQL Server 2017 CU6
- Atualização para dar suporte à eliminação de partição em planos de consulta que possuem índices espaciais no SQL Server 2016 e 2017
- Melhoria:habilitar o mecanismo de "limpeza forçada" no SQL Server 2017 no Linux
SQL Server 2017 CU5
- Melhor paralelismo intraconsulta soluciona problemas de impasses no SQL Server 2017
- Melhora o desempenho da consulta quando um filtro de bitmap otimizado é aplicado a um plano de consulta no SQL Server 2016 e 2017
SQL Server 2017 CU4
- Melhoria:melhora o desempenho do SQL Server 2017 em sistemas menores
SQL Server 2017 CU3
- A atualização adiciona suporte para a opção MAXDOP para instruções CREATE STATISTICS e UPDATE STATISTICS no SQL Server 2017
- Melhorar o diagnóstico de vazamento de tempdb em DMV e eventos estendidos no SQL Server 2017
- A atualização permite que os XML Showplans forneçam uma lista de estatísticas usadas durante a otimização de consulta no SQL Server 2017
- A atualização adiciona estatísticas de execução de uma função definida pelo usuário com valor escalar ao arquivo XML Showplan no SQL Server 2017
- A atualização adiciona informações de meta de linha do otimizador em planos de execução de consulta no SQL Server 2017
- A atualização habilita a tecnologia PolyBase no SQL Server 2016 e 2017
- A atualização adiciona a configuração de tempo limite da CPU ao grupo de trabalho REQUEST_MAX_CPU_TIME_SEC do Resource Governor no SQL Server 2017
SQL Server 2017 CU2
- Atualização para procedimento de limpeza de controle de alterações manual no SQL Server 2017
- Melhoria:melhorias gerais no processo de limpeza de controle de alterações no SQL Server 2017
- A atualização adiciona um novo evento estendido "marked_transaction_latch_trace" no SQL Server 2017 no Linux e no Windows
- Melhoria de desempenho para filtro intermediário espacial no SQL Server 2017
SQL Server 2017 CU1
- Atualização para melhorar o desempenho das exibições de gerenciamento dinâmico columnstore "column_store_row_groups" e "dm_db_column_store_row_group_physical_stats" no SQL Server 2016 ou 2017
- Adicione a capacidade de desabilitar ou habilitar alguns novos DMVs e DMFs introduzidos no SQL Server 2017
- Aprimoramento:nova palavra-chave é adicionada às instruções CREATE e UPDATE STATISTICS para manter a taxa de amostragem para futuras atualizações de estatísticas no SQL Server
Embora você possa pensar que o SQL Server 2017 era “apenas uma porta Linux”, na verdade existem muitas melhorias reais no mecanismo de banco de dados principal que beneficiarão todas as plataformas. A Microsoft continua a adicionar funcionalidades extras ao produto nas atualizações cumulativas do SQL Server 2017, e o SQL Server 2017 terá suporte total da Microsoft por um período maior do que o SQL Server 2016.