Início > SQL Server, SQL Server 2005, SQL Server 2008 > SQL Server: Atualização de base de dados

SQL Server: Atualização de base de dados

Neste artigo eu descrevo os pontos a serem observados para que a migração do SQL Server ocorra de forma mais transparente.

Atualização

A atualização de base de dados é realizada basicamente através de um Backup da base de dados no servidor de origem e Restore da base de dados no servidor de origem.

Porém algumas funcionalidades das versões anteriores ao SQL Server 2005 não são mais suportadas nas versões 2005 e 2008.

Algumas das principais funcionalidades não suportadas na atualização são as seguintes:

Padrão ANSI 86 substituido por ANSI 99

O SQL Server 2000 e anteriores, implementavam o padrão ANSI 86. O SQL Server 2005 e 2008 utilizam o padrão ANSI 99.

As alterações no ANSI 99 não são muitas, mas alguns comandos que antes eram implementados no ANSI 86 não são suportados e não serão reconhecidos como um comando válido nas novas versões do SQL Server.

Um exemplo dessa alteração é a forma de ser escrever JOINS entre tabelas. Apesar de, já há algum tempo, ser uma boa prática utilizar JOINS para se relacionar tabelas, alguns programadores tem o costume de utlizar produto carteziano:

 
--Essa consulta executará no SQL Server 2000, mas não no 2005 e 2008
SELECT Tabela1.Campo1, Tabela1.Campo2, Tabela2.Campo1
FROM   Tabela1, Tabela2
WHERE  Tabela1.Campo1 *= Tabela2.Campo1

--Corrija o problema com LEFT JOIN
SELECT Tabela1.Campo1, Tabela1.Campo2, Tabela2.Campo1
FROM   Tabela1
 LEFT JOIN Tabela2 ON Tabela1.Campo1 = Tabela2.Campo1
 

DTS não existe mais

O SQL Server 2000 possui um componente chamado DTS que executa operações de ETL. No SQL Server 2005 e 2008 o DTS foi substituido pelo SQL Server Integration Services.

Os pacotes de DTS podem ser convertidos com pouco esforço para o SSIS. Apenas algumas Tasks como ActiveX precisam de atenção especial.

Tipo XML

Algumas aplicações extraem XML diretamente do SQL Server. No SQL Server 2000 existe a clausula FOR XML que formata o texto de retorno de uma consulta em XML.

A partir do SQL Server 2005 foi criado o tipo de dados XML e a clausula FOR XML retorna as consultas como um objeto do tipo XML e não mais como texto.

As aplicações que utilizam essa clausula devem ser revisadas.

Linked Servers

Alguns objetos do SQL Server como Procedures e Views podem conter referências a Linked Servers no formato: SERVIDOR.BANCODEDADOS.SCHEMA.TABELA.

Esses Linked Servers precisam ser reconfigurados para apontar para o novo servidor após a atualização.

Upgrade Advisor

O Upgrade Advisor (Supervisor de Atualização) é uma ferramenta que analisa instâncias do SQL Server 2000 e 2005 para identificar possiveis problemas de atualização das suas bases.

Execute o Upgrade Advisor para todas a bases que deseja migrar e ele identificará se houver problemas na atualização.

 Onde baixar:

http://www.microsoft.com/downloads/details.aspx?FamilyId=F5A6C5E9-4CD9-4E42-A21C-7291E7F0F852&displaylang=en

 Como utilizar:

http://msdn.microsoft.com/pt-br/library/ms144256.aspx

Problemas não Identificáveis

O Upgrade Advisor é uma ótima ferramenta de analise, porém ele só procura por problemas presentes nas Bases de Dados.

Também é possível procurar problemas manualmente através de consultas a views de sistemas:

 
--Procurando Liked Servers pelo nome
SELECT  O.Name, C.Text
FROM    SYSCOMMENTS C
        INNER JOIN SYSOBJECTS O ON C.ID=O.ID
WHERE   C.TEXT LIKE '%LINKEDSERVERNAME%'

--Procurando *= e =*
SELECT  O.Name, C.Text
FROM    SYSCOMMENTS C
        INNER JOIN SYSOBJECTS O ON C.ID=O.ID
WHERE   C.TEXT LIKE '%*=%' OR C.TEXT LIKE '%=*%'
 

Existem, também, um outro escopo de possíveis problemas que foge da analise do Upgrade Advisor. Esses problemas estão ligados a scripts do SQL Server que são compilados ou interpretados no contexto da aplicação.

Tais problemas precisam ser corrigidos manualmente e toda a aplicação deve estar homologada para a Atualização da versão do SQL Server.

Informações Adicionais

A Microsoft possui uma documentação que trata a atualização e migração de SQL Server:

http://www.microsoft.com/sqlserver/2008/pt/br/upgrade.aspx

  1. Nenhum comentário ainda.
  1. No trackbacks yet.

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s

%d blogueiros gostam disto: