Fizemos um upgrade do SQL Server 2014 para 2016. No ambiente de desenvolvimento fizemos um upgrade in-loco, que deixou o banco de dados mestre no nível de compatibilidade 120. Mas em produção fizemos migração para novo servidor para que o mestre tenha nível de compatibilidade 130.
Eu gostaria de ter os dois ambientes o mais parecidos possível. Além disso, temos um aplicativo que está executando suas consultas no banco de dados mestre, portanto, teoricamente, eles podem se comportar de maneira diferente entre os ambientes.
É seguro alterar o nível de compatibilidade do banco de dados mestre de 120 para 130?
Não tenho certeza do que você quer dizer com um aplicativo "executando suas consultas do banco de dados mestre". Como você provavelmente sabe, isso se enquadraria na categoria de "piores práticas".
A atualização funcionou conforme o esperado em relação ao modo de compatibilidade do banco de dados mestre. Consulte Alterar o nível de compatibilidade do banco de dados e usar o Repositório de consultas . Infelizmente, esta documentação não fornece nenhuma orientação sobre se ela deve ser alterada após a atualização.
Portanto, se tudo estiver funcionando bem na produção com o modo de compatibilidade mais alto, deve ser seguro alterar o modo de compatibilidade no desenvolvimento. A única razão pela qual eu digo que deve ser seguro é que eu estive na área de TI por muito tempo para dizer que qualquer coisa será segura. Se você não tiver certeza de por que essa alteração deve ser segura, recomendo que você leia um pouco sobre o que o modo de compatibilidade realmente faz e, em seguida, deve ficar claro que não há problema em alterá-lo - principalmente porque você já testou a configuração em produção.
Além disso, não consegui encontrar nada que sugira que não há problema em alterá-lo e encontrei algumas referências que sugerem que isso deve ser feito:
Por último - esta pergunta tem um dia de idade e ninguém comentou ou respondeu com nenhum aviso, e tenho certeza de que alguém já teria comentado se houvesse algum risco significativo conhecido.
No seu caso, como é um sistema de desenvolvimento e existe um parceiro de servidor de produção com o modo de compatibilidade atualizado, eu certamente o atualizaria. Se o modo de compatibilidade tiver um efeito negativo em qualquer consulta, você desejará descobrir isso no desenvolvimento, não na produção. Para a maioria dos sistemas, isso não importa, pois os aplicativos não estão usando código no banco de dados mestre, mas parece que você tem alguns procedimentos armazenados lá ou algo que pode ser afetado pelo modo de compatibilidade do banco de dados mestre.