Вы находитесь на странице: 1из 23

PASOS PARA CREAR LA PUBLICACIN:

1.

Si el publicador tiene activado algn antivirus debe deshabilitarlo mientras se configura la rplica,
esto en algunos casos evita conflictos en la sincronizacin.

2.

En este caso el publicador es el mismo que el distribuidor (servidor que hace de puente para las
suscripciones), el distribuidor puede ser configurado, pero debe tener cuidado con las publicaciones
creadas anteriormente en el mismo servidor.

3.

En el entorno del SQL Server Management Studio (SSMS) del publicador, hacer clic derecho en
"Local Publications", y seleccionar "New Publication".

4.

Marcar la base de datos que se va a replicar.

5.

Escoger el tipo de publicacin: "Merge publication"

6.

Escoger las versiones de compatibilidad para la rplica segn versiones de SQL de los servidores de
suscripcin.

7.

Escoger la(s) tabla(s) ("articles") que se quieran publicar.

8.

Despus de seleccionar la tabla, clic en "Article Properties" y escoger "Set Properties of Highlighted
Table Article" o la segunda opcin si quiere poner la misma propiedad para todas las tablas. Ms
adelante se ver cmo utilizando la clusula WHERE se puede seleccionar los datos a publicar
dentro de una tabla, lo cual crea particiones de la misma que la rplica maneja segn si una particin
va dirigida a mltiples suscriptores ("overlapping") o si va dirigida a un solo suscriptor
("nonoverlapping"). En la opcin "Partition Options" puede seleccionar esta opcin, para nuestro caso
es "Nonoverlapping, single subscription".
Ver otras propiedades como "Action if name is in use" y "Synchronization direction", as como los
permisos para insertar ("Insert"), borrar ("Delete") y actualizar ("Update") para cambiar el estado de la
mezcla. Esto es porque el Agente de Mezcla ("Merge Agent") tiene acceso a los datos publicados
usando el Publication Access List (PAL), si quisiera que otro usuario de servidor SQL tuviera estos
permisos basta con agregarlos a esta lista.

9.

Clic en la pestaa "Resolver" y marcar la opcin que aparece para


los conflictos interactivamente durante la sincronizacin entre el publicador y el suscriptor.

resolver

10. Dado que la rplica de mezcla utiliza un UNIQUEIDENTIFIER para manejar las filas, se agregar una
nueva columna a las tablas a replicar llamada "rowguid" de tipo "uniqueidentifier".
11. En este paso se agregarn los filtros dinmicos para replicar las filas segn el suscriptor de destino.
Seleccionar "Add Filter" y lo siguiente ser escoger, en la seccin 1. La tabla a la cual aplicarle el
filtro; seccin 2. Construir el filtro especificando la columna de la tabla y haciendo uso de la clusula
WHERE (se puede usar las mismas clusulas definidas en SQL); seccin 3. Se chequear la opcin
"A row will only go to one subscription", la misma debe estar marcada por defecto debido a que se
escogi la propiedad como "Nonoverlapping, single subscription".
Para construir el filtro puede utilizar clusulas definidas en la sintaxis de SQL como JOIN as
como funciones predefinidas. En este caso es utilizada la funcin HOST_NAME() que devuelve un
nvarchar con el nombre del servidor de suscripcin. Para utilizar la misma en filtros
de construccin ms compleja puede utilizarse una conversin de esta funcin. Esta funcin permite
el dinamismo del filtro, ya que en lugar de crear una publicacin con filtro esttico para cada
suscriptor, o sea para cada punto de venta, se crea una publicacin en la cual se puede identificar al
suscriptor usando esta funcin y comparando con un id dentro de la tabla de inters.

12. Seleccionar la planificacin del agente de instantnea ("Snapshot Agent"). El "Snapshot Agent" se ejecuta
en el publicador y es el encargado de captar instantneas o "snapshot" de cada tabla o particin a replicar. El
mismo se puede cambiar cliqueando en el botn "Change" si aparece chequeada la segunda opcin. La
frecuencia de ejecucin se puede decir cada cierto da, hora, minuto o segundo.
En esta misma ventana puede generar los "snapshots" inmediatamente o no. Como aconseja el mensaje que
aparece, si piensa cambiar las propiedades del "snapshot" no la cree inmediatamente. En este caso no la
generaremos porque ms adelante cambiaremos la direccin de la carpeta donde se guardarn los
"snapshots".

13. Especifique la configuracin relacionada con la seguridad para el "Snapshot Agent". En esta parte se
especificar la cuenta de usuario a usar para que sean creados los "snapshots" y la cuenta de SQL necesaria
para acceder a la base de datos. Otra opcin es utilizar una cuenta del SQL Agent que debe estar activo en
todo momento (chequear si es preciso).

14. Seleccionar "Create the publication".


15. Identificar la publicacin con un nombre y seleccionar finalizar.

16. Cerciorarse que la creacin de la publicacin no tuvo problema alguno


Modificaremos algunas propiedades de la publicacin:
Al hacer clic derecho sobre la publicacin en el SSMS, seleccione "Properties" y en el panel de la izquierda
vaya a la opcin "Subscription Options". Cerciorase que ambas opciones poseen los valores indicados como
se indica en la siguiente imagen.

En la opcin "Data Partitions" es donde se predefinen los identificadores de las particiones. El valor otorgado a
una particin en el "HOST_NAME value", ser el identificador que tendr el suscriptor, devolviendo el mismo
en cada llamada a "HOST_NAME()" mediante los filtros. Esto permite la creacin dinmica de los "snapshots"
para cada una de las particiones.
En la siguiente imagen se predefine un suscriptor cuyo valor es 22. (Recordar que este valor es de tipo
nvarchar). Adems puede editar el horario de inicializacin de la sincronizacin del suscriptor con el
publicador usando el botn "Edit".

En la opcin "Snapshot" aparecer para cambiar la direccin de la carpeta donde son guardados
los archivos "snapshots". En la seccin "Location of snapshot files", la carpeta por defecto que aparecer es la
especificada por el distribuidor, donde se almacenan todos los "snapshots" de las publicaciones creadas
siendo el distribuidor el mismo que el publicador. Esta carpeta puede ser cambiada seleccionando "Put files in
the following folder". Mediante esta opcin los "snapshots" de esta publicacin sern guardadas en esa
carpeta sin modificar las carpetas de almacenamiento de las dems publicaciones. Para cambiar esta ltima
vea "Distributor Properties".

Una vez realizados todas las modificaciones a las propiedades de la publicacin, puede iniciar el "Snapshot
Agent" para que cree los "snapshots" siguiendo los cambios. Para ello al hacer clic derecho sobre la
publicacin en el SSMS, seleccione "View Snapshot Agent Status". Utilizando el botn "Start" comienza la
creacin de los "snapshots" y el botn "Monitor" es utilizado para visualizar el comportamiento del proceso de
la rplica de los datos.

Pasos para crear la suscripcin


Corresponde crear las suscripciones a la publicacin realizada para que los datos puedan ser replicados
correctamente a cada suscriptor, en este caso cada suscriptor es un punto de venta.
1.

En "Local Publication", hacer clic derecho sobre el nombre de la publicacin ("SalesDataPublication")


y seleccione "New Subscription".

2. A continuacin escoger la publicacin a la cual se va a suscribir. Si el publicador no aparece por defecto, lo


puede escoger, as como tambin la publicacin a la cual se quiere suscribir.

3. Escoger el tipo de suscripcin, o sea, si es "push subscriptions" o "pull subscriptions". La diferencia radica
en que para el primer caso todos los agentes de mezcla se ejecutarn en el distribuidor (que es el mismo
publicador para esta configuracin) y en el segundo caso el suscriptor ejecutar su agente de mezcla. Cada
uno tiene sus objetivos y su seleccin vara dependiendo del problema.

4. Escoger el servidor de suscripcin y la base de datos de suscripcin, si no aparece listado seleccione "Add
SQL Server Subscriber", debe suministrar una cuenta de SQL . Para este ejemplo la suscripcin se realiz
desde otro servidor y la base de datos[1]se nombra SalesDBPoint22.

5. Especificar las opciones de seguridad tanto de la conexin al publicador como al suscriptor. En este caso se
utiliz el "SQL Server Agent service account".

6. Lo siguiente es especificar el horario de sincronizacin al publicador. Escogiendo la opcin "", puede definir
la frecuencia, en das, horas o minutos de la misma.

7. Escoger el modo de inicializar la suscripcin segn el "snapshot" de los datos publicados. Si no quiere
inicializarlo hasta no tener completada la configuracin del snapshot, puede desmarcar la opcin "Initialize".

8. Seleccionar el tipo de suscripcin para la resolucin de conflictos. En la rplica de mezcla la suscripciones


pueden ser "Server" o "Client". La suscripcin de tipo "Server" se utiliza para establecer una prioridad a cada
suscriptor, asignndole un valor comprendido entre 0.00 y 99.99. La suscripcin de tipo "Client" se establce
cuando se quiere que todos los suscriptores tengan la misma prioridad, el valor establecido por defecto es
0.00. Para ver ms sobre el tema consulte http://technet.microsoft.com/enus/library/ms151749%28v=sql.105%29.aspx.

9. En la siguiente ventana aparecer para sobreescribir el valor de HOST_NAME(), que por defecto es el
nombre del servidor de suscripcin. Se escribir 22, que ya fue establecido en nuestro caso para el punto de

venta.

10. Escoger la opcin "Create the subscription" y puedes finalizar la suscripcin para su creacin.

Ahora puede chequear insertando datos en la base de datos de rplica y los mismos son replicados segn el
valor del HOST_NAME().

Вам также может понравиться