Sei sulla pagina 1di 12

SQL Server Replication Passo-a-Passo

Este artigo uma explicao passo-a-passo de como implementar uma replicao de dados do tipo
Merge Replication utilizando o SQL Server 2005 e como consumi-la utilizando uma base de dados
SQL Server Compact Edition.
Criando uma nova Publicao: Primeiramente iremos criar uma base de dados chamada MERCADO, e
inserir duas tabelas com um relacionamento simples entre elas nesta base de dados: uma tabela de PRODUTOS
e uma outra de CATEGORIAS de Produtos, podemos ver suas respectivas estruturas nas figuras 1 e 2.

Figura 1

Figura 2
O segundo passo popular estas duas tabelas para que em um primeiro sincronismo com o Subscriber alm
da estrutura ser criada, j haja uma carga de dados inicial, as tabelas foram populadas manualmente conforme
as figuras 3 e 4.

Figura 3

Figura 4
Agora sim, estando criada a nossa base de dados, iremos iniciar o processo de publicao desta base. Para isso
devemos clicar com o boto direito do mouse em Local Publications dentro da pasta Replication no Object
Explorer, como podemos ver na figura 5.

Figura 5
Se esta for a primeira vez que fizemos uma publicao no nosso servidor SQL ele ir mostrar as telas
representadas nas figuras 6, 7 e 8. Estas telas somente aparecero na primeira vez que uma publicao for feita
em nosso servidor.
Na figura 6, iremos decidir se este servidor o qual estamos fazendo a publicao vai ser o seu prprio
distribuidor ou se vai utilizar um servidor adicional (j configurado para ser distribuidor) para distribuir suas
replicaes.

Figura 6
Aps, teremos que escolher o local onde ficaro os Snapshots gerados pela nossa publicao, necessrio
que seja em um diretrio publicado no IIS para que se possa obter acesso via rede interna ou at mesmo pela
internet. (Figura 7)

Figura 7
A ltima tela de configurao da distribuio serve para que se possa escolher se o SQL Server Agent inicia
automaticamente quando o computador for iniciado ou se voc deseja inici-lo manualmente, observando que
para que o Agent seja iniciado automaticamente, o usurio SQL Server Service deve ter permisses de
administrador nesta mquina (Figura 8).

Figura 8
Tendo sido feitas as configuraes de distribuio para a nossa replicao, apartir de agora iniciaremos o
processo de publicao propriamente dito. Primeiramente devemos escolher a base a qual vai ter seus dados
replicados, neste caso a base MERCADO (Figura 9).

Figura 9
Na prxima tela (Figura 10) podemos escolher entre todos os tipos de replicao do SQL Server, logo abaixo
h uma descrio sucinta sobre o tipo selecionado (para maiores informaes recomendo meu outro artigo
Introduo SQL Server Replication). Neste caso escolheremos Merge Replication.

Figura 10
Logo aps esta etapa devemos escolher quais tipos de Banco de Dados podem acessar esta publicao (Figura
11).Como o foco do artigo SQL Server Compact Edition, escolheremos somente este, mas poderamos
escolher juntamente todos os tipos necessrios sem problema algum.

Figura 11
Na prxima tela devemos escolher os artigos (articles) que sero publicados, como s temos duas tabelas na
nossa base, e elas tm um relacionamento ento selecionaremos as duas tabelas (Figura 12).

Figura 12
A prxima tela uma espcie de aviso, dizendo que sero adicionados aos campos das tabelas existentes uma
coluna nova do tipo uniqueidentifier.(Figura 13).

Figura 13
Agora, temos a possibilidade de incluir filtros na publicao, para que sejam publicados apenas os registros que
queremos. possvel fazer uma publicao dinmica, como por exemplo, queremos que determinados produtos
vo somente para a base de dados de um determinado vendedor ento filtramos pelo HOST_NAME que deve
ser nico para cada base de dados SQL Server CE, alm disso tambm h a possibilidade de publicar apenas
algumas colunas especficas, muito teis em aplicaes Mveis onde o volume de dados deve ser menor,
entretanto neste caso no aplicaremos filtros.
Depois devemos setar o Snapshot Agent para criar os primeiros Snapshots, neste momento, adicionalmente
podemos Schedular horrios para que ele gere novos Snapshots(Figura 14).

Figura 14
O ltimo passo para a publicao a seleo de um nome, neste caso como a publicao da base MERCADO
o nome ser PUB_MERCADO.
Ao finalizar esta etapa ser mostrada uma tela demonstrando o Status da publicao (Figura 15).

Figura 15
Pronto a est a nossa publicao criada e pronta para receber assinantes(Figura 16).

Figura 16
Assinando uma Publicao Existente
Figura 17
Aps a criao vamos abrir esta base no Microsoft SQL Server Management Studio, para isso
selecionamos SQL Server Compact Edition como Server Type e localizamos o nosso arquivo
Mercado_Compact.sdf no diretrio em que o criamos(Figura 18).

Figura 18
O prximo passo criar a Assinatura propriamente dita, para isso clicamos com o boto direito na pasta
Subscriptions dentro de Replication e escolhemos a opo New Subscription.Note que temos
apenas a opo de Subscription, isso ocorre porque a base de dados SQL Server Compact Edition no
possui a opo de Publicao(Figura 19).

Figura 19
Agora selecionamos a publicao que queremos fazer a assinatura, neste caso a PUB_MERCADO do
servidor Solucoes1(Figura 20).

Figura 20
Depois colocamos um nome na assinatura, aqui colocamos ASS_MERCADO, note que h um campo
para se setar o HOST_NAME, para que haja filtragem, como no estamos filtrando campo nenhum aqui
desnecessrio preenche-lo.(Figura 21)

Figura 21
Depois desta etapa, devemos dizer qual o diretrio virtual onde est a publicao, aqui ser a URL:
http://10.10.100.140/replication que corresponde ao D:\Replication setado anteriormente no momento da
configurao da distribuio.Selecionamos tambm que iremos nos conectar anonimamente ao Web
Server(novamente para fins didticos OK?)(Figura 22).

Figura 22
Agora teremos que setar os dados para conexo com a base remota, aqui usaremos o usurio sa e sua
respectiva senha (Figura 23).

Figura 23
Aps essas pequenas configuraes de acesso, e nos mostrado um breve resumo dos dados de acesso a
publicao e so demonstrados dois exemplos de cdigo, um em C# e um em VB.NET para que essas
configuraes sejam feitas programaticamente, em uma aplicao Windows Mobile por exemplo (Figura
24).

Figura 24
Aps essas configuraes, criao de publicao e de assinatura, basta que sincronize a assinatura,
clicando-se com o boto direito sobre ela e Syncronize, pronto pode verificar as tabelas que tudo
estar l, dados, estrutura e tudo mais.
Agora ao se criar um novo registro nesta base SQL Server CE e mandar que seja feito o sincronismo
novamente, como um passe de mgica esse registro estar na base publicada e os novos registros
includos na base publicada estaro disponveis na base .sdf. Esta a Merge Replication, tipo de
replicao que mescla dados da publicao e dos assinantes.

Read more: http://www.linhadecodigo.com.br/artigo/1473/sql-server-replication-passo-a-
passo.aspx#ixzz2NFFeWoby

Potrebbero piacerti anche