Deploy Database to SQL Azure no SQL Server 2012 !

Posted on junho 27, 2012

6


Introdução

Conforme post anterior – https://luanmorenodba.wordpress.com/2012/06/26/migrando-sql-server-para-o-sql-azure/ aonde fizemos alguns procedimentos para a migração de uma base SQL Server para SQL Azure, agora irei mostrar outro modo de migração para o SQL Azure.

Veremos aqui a praticidade e facilidade que esse recurso nos proporciona.

Antes de realizar a migração dos registros, devemos ter a conta do SQL Azure criada assim como a instância e base de dados possuindo acesso ao firewal da Microsoft. Toda essa configuração você pode ver no meu post anterior.

Logo após toda a realização da configuração inicial, teremos a base de dados SQL Server e SQL Azure dentro do SSMS 2012.

image

(Figura 1 – SQL Server e SQL Azure.)

Informações e Limitações

Como já sabemos, temos um checklist a fazer antes de realizar a migração para a núvem:

Recursos Obrigatórios.

Primary Key em todas as tabelas.

Recursos Não Suportados.

• Common Language Runtime (CLR).
• Database file placement.
• Database mirroring.
• Distributed queries.
• Distributed transactions.
• Filegroup management.
• Global temporary tables.
• Spatial data and indexes.
• SQL Server configuration options.
• SQL Server Service Broker.
• System tables.
• Trace Flags.

Segue lista de todos os recursos que são suportados parcialmente  – http://msdn.microsoft.com/en-us/library/ee336267.aspx e os que não são – http://msdn.microsoft.com/en-us/library/ee336253.aspx

O Novo Recurso

Sendo assim o novo recurso presente no SQL Server 2012 – Deploy Database to SQL Azure realiza o deploy completo de toda a base de dados e suas informações.

Sendo assim, para iniciarmos o processo de migração, primeiramente devemos realizar a verificação de todos os requisitos, sendo assim irei realizar a migração do banco de dados DataSyncAzure aonde você pode realizar o download do .bak aqui – https://skydrive.live.com/?cid=6E894476A77CD2F2&id=6E894476A77CD2F2%21142

Agora iremos verificar se há alguma tabela que não possui Primary Key.

USEDadosAzureSync

go

 

SELECT OBJECT_NAME(i.object_id) AS Nome  

FROM sys.indexes AS i

INNER JOIN sys.objects AS o

ON i.object_id = o.object_id

     AND o.type = ‘U’

WHERE i.type_desc = ‘HEAP’

     AND o.schema_id <> 4

ORDER BY Nome

image

(Figura 2 – Tabela sem Primary Key)

 

Como temos essa tabela, não podemos realizar a migração, então antes iremos analisá-la e criar um índice para a mesma.

sp_help‘[HR].[ListPersonName]’

image

(Figura 3  – Analisando informações da tabela HR.ListPersonName.)

Sendo assim, vemos o campo empid, aonde pode ser um ótimo candidato para Primary Key e assim realizaremos a criação desse índice.

CREATE CLUSTERED INDEX idxCL_HRListPersonName_empid

ON [HR].[ListPersonName](empid)

Como não possuímos mais nenhuma tabela sem um índice primário, agora estamos apto para a migração.

Agora  – Botão Direiro no Banco de Dados – DadosSQLAzureSync – Tasks – Deploy Database to SQL Azure.

image

(Figura 4 – Selecionando a opção dentro do SSMS 2012.)

Logo após ter selecionando essa opção, será aberto um wizard aonde iremos terminar o processo de migração.

image

(Figura 5 – Wizard para migração do SQL Server para o SQL Azure.)

Nessa próxima tela, iremos realizar a conexão com nossa instância do SQL Azure, passando o Login e senha, não se esqueça de habilitar o seu IP atual para acesso.

Será requisitado o nome do banco de dados e o tamanho máximo que ele poderá atingir, além de ser disponibilizado um arquivo temporário com extensão .bacpac que você poderá utilizar depois se desejar realizar a mesma migração.

image

(Figura 6 – Deploy do banco de dados dentro do SQL Azure.)

image

(Figura 7 – Sumário da operação realizada.)

Após finalizado toda essa parte o wizard se encaminhará de todo o resto. Ele realizará a criação e inserção de todos os registeos do banco de dados dentro do SQL Azure.

image

(Figura 8 – Importação do banco de dados Parte 1.)

image

(Figura 9 – Importação do banco de dados Parte 2.)

image

(Figura 10 –Conclusão do Wizard de migração da base de dados.)

Vendo a  migração………

image

(Figura 11 – Visualizando migração no SSMS 2012.)

image

(Figura 12 – Visualizando migração no Painel de gerenciamento do Windows Azure.)

Certificando se os dados foram inseridos realmente…..

image

(Figura 13 – Selecionando o banco de dados DadosAzureSync dentro do SSMS 2012 no SQL Azure.)

SELECT @@SERVERNAME AS AzureServer

UNION

SELECT @@VERSION AS AzureVersion

 

SELECT*

FROM [HR].[ListPersonName]

image

(Figura 14 – Informações dentro do SQL Azure.)

Pronto, toda nossa base de dados está na nuvem e pronta para ser acessada.

Marcado: ,