Pergunta

No momento, estamos executando um servidor no modo de compatibilidade 8 e quero atualizá-lo.

  • Quais são as implicações de simplesmente entrar e mudar isso?
  • O que provavelmente quebrará?
  • Existe algo que verifique se os dados sobreviverão antes de eu executá-los?
  • Posso reverter para o modo 8 sem realizar uma restauração e sem perda de dados?
Foi útil?

Solução

Se você vai dos 80 aos 90, as diferenças são mínimas.Ir de 65 para 70+ pode causar um impacto grave (NULLs são armazenados de forma diferente).

Implicações - seus SPs podem retornar resultados diferentes do que você esperaria de quebrar:funções, os dados do SPS devem sobreviver;nada ali deve afetar as coisas.
Passar de 80 para 90 e voltar leva apenas alguns segundos.Sim, você pode ir e voltar.

http://msdn.microsoft.com/en-us/library/bb510680.aspx

algumas pegadinhas: http://mapamdug.blogspot.com/2006/03/sql-server-2005-gotcha-1.html

Outras dicas

  1. O modo de compatibilidade não afeta o armazenamento.É apenas uma bandeira.Nada mudará nos dados ou consultas.Somente a execução da consulta será afetada.
  2. Nada – ou muitas coisas.Você usou sintaxe marcada como obsoleta e sujeita a exclusão em 2000?Você usou parênteses ao fornecer dicas nas consultas?Você usou dicas de execução de consulta?Se sim, é melhor revisar seu banco de dados primeiro, remover a sintaxe obsoleta, colocar os parênteses de volta e cavar o BOL para descobrir quais dicas irão desacelerar sua consulta ajustada no novo mecanismo.
  3. Não.Mas os dados sobreviverão.Na verdade, se você conseguir executar seu banco de dados no server2005, mesmo no modo 8, você já estará usando um novo formato de dados.
  4. Sim, você pode reverter.Não é uma transformação, é apenas definir um sinalizador que diz "Minhas consultas são compatíveis".

O modo de compatibilidade desativa os recursos da versão mais recente, pessoalmente não trabalhei com muitos bancos de dados que apresentam problemas, o principal problema em nosso ambiente é que depois de mudar para 9, você não pode mais usar o Enterprise Manager para visualizar o base de dados.

Um backup/restauração é uma boa opção e também acredito que você pode revertê-lo sem problemas.

(Eu disse que era apenas se você estivesse migrando do 6.5, que não armazenava nada em char() campos quando NULL - 70 e maiores usam todo o campo, o que pode causar grandes alterações de tamanho.)

VBStreets está certo em seus pontos - e definitivamente no ponto 3 - quando você executou o banco de dados pela primeira vez em 2005, ele converteu a estrutura de dados.Se você fizer um backup, ele não poderá ser restaurado em versões anteriores, independentemente do nível de compatibilidade.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top