Este documento tem como objetivo fornecer orientações sobre Nível de Compatibilidade do SQL Server. Esta alteração deve ser feita pelo DBA responsável, mais detalhes sobre este procedimento consulte a Documentação da Microsoft.
Importância de Manter o Nível de Compatibilidade do SQL Server Atual
O nível de compatibilidade do SQL Server é um parâmetro que define como o banco de dados interpreta instruções comandos T-SQL, comportamentos de otimização aplica otimizações e habilita recursos disponíveis. Embora seja possível manter bancos em versões mais antigas de compatibilidadeconfigurados em níveis antigos, essa prática pode trazer riscos significativos e limitar o pleno aproveitamento da plataformafuncionamento adequado dos sistemas, especialmente na linha RM.
1. Segurança
Manter o nível de compatibilidade atualizado garante ajuda a garantir que o banco de dados esteja alinhado com as práticas utilize recursos modernos de segurança mais recentes implementadas pela Microsoft. Recursos antigos ou descontinuados podem conter vulnerabilidades conhecidas que não são mais corrigidas nas compatibilidades legadas. Dessa forma, manter-se no nível mais atual reduz a superfície de ataque e aumenta a resiliência contra ameaças. Compatibilidades antigas podem manter comportamentos obsoletos que não seguem as práticas atuais, aumentando a superfície de risco do ambiente.
2. Compatibilidade com Scripts e Ferramentas
Muitos scripts, bibliotecas e ferramentas modernas de administração e automação são projetados considerando os da Linha RM
Os produtos da Linha RM trabalham com scripts SQL desenvolvidos considerando as funcionalidades e comportamentos mais recentes do SQL Server. Se o banco permanece estiver em um nível de compatibilidade antigodefasado, funções ou sintaxes comandos podem não ser reconhecidas interpretados corretamente, gerando resultando em erros , falhas de execução ou necessidade de adaptações desnecessáriasatualização do sistemas.
3. Otimização Desempenho e Desempenho
Cada versão de compatibilidade traz melhorias significativas no otimizador de consultas. Permanecer em um nível antigo pode impedir o banco de tirar proveito de avanços no plano de execução, índices mais inteligentes e estratégias modernas de gerenciamento de carga. Isso impacta diretamente na performance, podendo tornar processos mais lentos e custosos em termos de recursos.
4. Suporte e Evolução
A Microsoft recomenda fortemente que os bancos estejam sempre no nível de compatibilidade mais atual disponível. Isso facilita a manutenção, garante suporte oficial em incidentes críticos e evita dificuldades futuras em migrações para novas versões do SQL Server.
...
Estabilidade
A utilização de níveis de compatibilidade mais recentes permite que o otimizador de consultas do SQL Server adote planos mais eficientes e inteligentes, resultando em melhor desempenho para os scripts da Linha RM.
Observação: Nos níveis 120 e 130, a alteração no cálculo de cardinalidade pode gerar degradação de performance em consultas com joins alinhados, conforme documentado pela própria Microsoft. Nesses casos, a recomendação é reescrever a consulta, aplicar o hint que força a cardinalidade anterior ou migrar para versões superiores. Mais detalhes: Documentação Microsoft
Versões Recomendadas
...
| SGBD | 32Bits | 64Bits | Nível de Compatibilidade Padrão | Versão/Patch | Info TOTVS | Observações | Status |
|---|
| SQL Server |
...
...
Término do suporte estendido, mais informações acesse aqui.
...
...
...
...
...
...
...
...
...
...
Versões Suportadas
| SQL Server 2016 |
| X | 130 | SP1 |
| Término do suporte padrão, em suporte estendido, mais informações acesse aqui. | |
| SQL Server 2017 |
| X | 140 | RTM |
| Término do suporte padrão, em suporte estendido, mais informações acesse aqui. | |
SQL Server 2019| Dica |
|---|
X| title | Documento de Portabilidade |
|---|
|
Mais detalhes sobre portabilidade na página de portabilidade da linha RM |
| Aviso |
|---|
| title | Previsão de bloqueio nível de compatibilidade |
|---|
|
Atenção: A partir da release 12.1.2702, os níveis de compatibilidade 110 e 120 do SQL Server não serão mais suportados. Planeje sua migração. |
| HTML |
|---|
<!-- Inicia codigo Contador -->
<div align="center"><a title='Contador de Visitas do MegaContador' href='https://megacontador.com.br/' ><img src='https://megacontador.com.br/img-hL2YYgu6qeqACYD4-1.gif' border='0' alt='Contador de visitas'></a></div>
<!-- Fim do codigo Contador --> | 150 | RTM | Recomendado | | Estado |
|---|
| colour | Green |
|---|
| title | Supported |
|---|
|
| SQL Server 2022 | X | 160 | CU5 | Recomendado | Importante: Aplicar atualização cumulativa 5 ou superior. | | Estado |
|---|
| colour | Green |
|---|
| title | Supported |
|---|
|
| Oracle 12c | X | Não se aplica | 12.2 | Não suportado | | Estado |
|---|
| colour | Red |
|---|
| title | Not Supported |
|---|
|
| Oracle 18c | X | Não se aplica | 18.5.0.0.0 | Término do suporte padrão, em suporte estendido, mais informações acesse aqui. | | Oracle 19c* | X | Não se aplica | 19.3.0.0.0 | Recomendado | | Estado |
|---|
| colour | Green |
|---|
| title | Supported |
|---|
|
| *Obs.: O uso de aplicativos Delphi com o Oracle 19c demandam configurações específicas do SGDB (Uso de Aplicativos Delphi com o oracle 19C), que podem gerar variações em sua performance.
| Aviso |
|---|
|
A partir da release 12.1.2510 todas as versões não suportadas passam a ter seu uso impedido na atualização da base de dados Linha RM.
Oracle 12c, 11g e anteriores.SQL Server 2014 e anteriores.