Upload
yuleysi-lupuche-benites
View
626
Download
2
Tags:
Embed Size (px)
Citation preview
REPLICACION DE DATOS
1
‘Universidad san Pedro
Facultad Ing. Informática y de Sistemas
Escuela de Ingeniería
Replicación De Datos
Profesor: Rivera Montero Freddy
Autores:-Lupuche Benites Maria
Yuleysi del Pilar
- Chata Calle, Sergio
Sullana, Mayo
REPLICACION DE DATOS
2
INDICE
1. Introducción
2. Resumen
3. Componentes del modelo de replicación
4. Tipos de replicación
4.1. Replicación de instantáneas
4.2. Replicación transaccional
4.3. Replicación de mezcla
5. Factores para elegir el método de replicación a utilizar
6. Fases generales para implementar y supervisar la replicación
7. Consideraciones finales
8. Configuración de red
9. Configuración en SQL Server
9.1. Desde la Herramienta de red del servidor de SQL Server
9.2. Mediante una instrucción de red en Windows XP
REPLICACION DE DATOS
3
9.3. Configurar el puerto de escucha de una instancia de SQL Server
10. Configuraciones necesarias para realizar la replica
11. Conclusiones
REPLICACION DE DATOS
4
INTRODUCCIÓN
La replicación de datos permite que ciertos datos de la base de datos sean
almacenados en más de un sitio, y su principal utilidad es que permite
aumentar la disponibilidad de los datos y mejora el funcionamiento de las
consultas globales a la base de datos.
La replicación en SQL Server consiste, en el transporte de datos entre dos o
más instancias de servidores. Para ello SQL Server brinda un conjunto de
soluciones que permite copiar, distribuir y posiblemente modificar datos de toda
la organización. Se incluyen, además, varios métodos y opciones para el
diseño, implementación, supervisión y administración de la replicación, que le
ofrecen la funcionalidad y flexibilidad necesarias para distribuir datos y
mantener su coherencia.
En la replicación se utiliza una metáfora de la industria de la publicación para
representar los componentes y procesos de una topología de replicación. De
esta forma el modelo se compone, básicamente, de los siguientes elementos:
publicador, distribuidor, suscriptores, publicaciones, artículos y suscripciones.
REPLICACION DE DATOS
5
RESUMEN
La replicación de datos consiste en el transporte de datos entre dos o más
servidores, permitiendo que ciertos datos de la base de datos estén
almacenados en más de un sitio, y así aumentar la disponibilidad de los datos y
mejorar el rendimiento de las consultas globales. El modelo de replicación está
formado por: publicador, distribuidor, suscriptor, publicación, artículo y
suscripción; y varios agentes responsabilizados de copiar los datos entre el
publicador y el suscriptor. A los tipos básicos de replicación (de instantáneas,
transaccional y de mezcla), se le incorporan opciones para ajustarse aún más a
los requerimientos del usuario.
REPLICACION DE DATOS
6
COMPONENTES DEL MODELO DE REPLICACIÓN
Para representar los componentes y procesos de una topología de replicación
se utilizan metáforas de la industria de la publicación. El modelo se compone
de los siguientes objetos: el publicador, el distribuidor, el suscriptor, la
publicación, el artículo y la suscripción; así como de varios agentes, que son
los procesos responsabilizados de copiar los datos entre el publicador y el
suscriptor. Estos agentes son: agente de instantáneas, agente de distribución,
agente del lector del registro, agente del lector de cola y agente de mezcla.
La replicación de datos es un asunto exclusivamente entre servidores de datos,
en nuestro caso hablamos de servidores SQL Server. Los servidores SQL
Server pueden desempeñar uno o varios de los siguientes roles: publicador,
distribuidor o suscriptor.
El publicador es un servidor que pone los datos a disposición de otros
servidores para poder replicarlos. El distribuidor es un servidor que aloja la
base de datos de distribución y almacena los datos históricos, transacciones y
metadatos. Los suscriptores reciben los datos replicados.
Una publicación es un conjunto de artículos (este concepto: "artículo de una
publicación", es diferente del concepto "artículo o registro de una base de
datos", como explicaremos más adelante) de una base de datos. Esta
agrupación de varios artículos facilita especificar un conjunto de datos
relacionados lógicamente y los objetos de bases de datos que desea replicar
conjuntamente. Un artículo de una publicación puede ser una tabla de datos la
cual puede contar con todas las filas o algunas (filtrado horizontal) y
simultáneamente contar de todas las columnas o algunas (filtrado vertical), un
procedimiento almacenado, una definición de vista, la ejecución de un
procedimiento almacenado, una vista, una vista indizada o una función definida
por el usuario.
Una suscripción es una petición de copia de datos o de objetos de base de
datos para replicar. Una suscripción define qué publicación se recibirá, dónde y
cuándo. Las suscripciones pueden ser de inserción o de extracción; y una
publicación puede admitir una combinación de suscripciones de inserción y
extracción. El publicador (en las suscripciones de inserción) o el suscriptor (en
las suscripciones de extracción) solicitan la sincronización o distribución de
datos de una suscripción.
El publicador puede disponer de una o más publicaciones, de las cuales los
suscriptores se suscriben a las publicaciones que necesitan, nunca a artículos
individuales de una publicación. El publicador, además, detecta qué datos han
REPLICACION DE DATOS
7
cambiado durante la replicación transaccional y mantiene información acerca
de todas las publicaciones del sitio.
La función del distribuidor varía según la metodología de replicación
implementada. En ocasiones se configura como distribuidor el mismo
publicador y se le denomina distribuidor local. En el resto de los casos el
distribuidor será remoto, pudiendo coincidir en algún caso con un suscriptor.
Los suscriptores además de obtener sus suscripciones, en dependencia del
tipo y opciones de replicación elegidas, pueden devolver datos modificados al
publicador. Además puede tener sus propias publicaciones.
TIPOS DE REPLICACIÓN
Los tipos básicos de replicación son:
Replicación de instantáneas
Replicación transaccional
Replicación de mezcla
Para ajustarse aún más a los requerimientos de los usuarios se incorporan
opciones como son la actualización inmediata en el suscriptor, la actualización
en cola y la transformación de datos replicados.
Replicación de instantáneas
En la replicación de instantáneas los datos se copian tal y como aparecen
exactamente en un momento determinado. Por consiguiente, no requiere un
control continuo de los cambios. Las publicaciones de instantáneas se suelen
replicar con menos frecuencia que otros tipos de publicaciones. Puede llevar
más tiempo propagar las modificaciones de datos a los suscriptores. Se
recomienda utilizar: cuando la mayoría de los datos no cambian con frecuencia;
se replican pequeñas cantidades de datos; los sitios con frecuencia están
desconectados y es aceptable un periodo de latencia largo (la cantidad de
tiempo que transcurre entre la actualización de los datos en un sitio y en otro).
En ocasiones se hace necesario utilizarla cuando están involucrados algunos
tipos de datos (text, ntext, e imagen) cuyas modificaciones no se registran en el
registro de transacciones y por tanto no se pueden replicar utilizando la
metodología de replicación transaccional.
Los servidores OLAP son candidatos a la replicación de instantáneas. Las
consultas ad-hoc que aplican los administradores de sistemas de información
REPLICACION DE DATOS
8
son generalmente de solo lectura y los datos con antigüedad de horas o días
no afectan sus consultas. Por ejemplo un departamento desea hacer una
investigación sobre demografía de los artículos vendidos hace dos meses. La
información de la semana pasada no afectará sus consultas; además el
departamento no está planeando hacer cambio en los datos, solo necesita el
almacén de datos. Hay que destacar además que cuando están involucrados
algunos tipos de datos (text, ntext, e imagen) cuyas modificaciones no se
registran en el registro de transacciones y por lo tanto es necesario transportar
estos datos del publicador al suscriptor para lo cual es necesario utilizar la
replicación de instantáneas, al menos como una solución parcial.
Con la opción de actualización inmediata en el suscriptor se permite a los
suscriptores actualizar datos solamente si el publicador los va a aceptar
inmediatamente. Si el publicador los acepta, se propagan a otros suscriptores.
El suscriptor debe estar conectado de forma estable y continua al publicador
para poder realizar cambios en el suscriptor. Esta opción es útil en escenarios
en los que tienen lugar unas cuantas modificaciones ocasionales en los
servidores suscriptor.
Replicación transaccional
En este caso se propaga una instantánea inicial de datos a los suscriptores, y
después, cuando se efectúan las modificaciones en el publicador, las
transacciones individuales se propagan a los suscriptores. SQL Server 2000
almacena las transacciones que afectan a los objetos replicados y propaga
esos cambios a los suscriptores de forma continua o a intervalos programados.
Al finalizar la propagación de los cambios, todos los suscriptores tendrán los
mismos valores que el publicador. Suele utilizarse cuando: se desea que las
modificaciones de datos se propaguen a los suscriptores, normalmente pocos
segundos después de producirse; se necesita que las transacciones sean
atómicas, que se apliquen todas o ninguna al suscriptor; los suscriptores se
conectan en su mayoría al publicador; su aplicación no puede permitir un
periodo de latencia largo para los suscriptores que reciban cambios.
Es útil en escenarios en los que los suscriptores pueden tratar a sus datos
como de sólo lectura, pero necesitan cambios a los datos con una cantidad
mínima de latencia. Ejemplo: un sistema para el procesamiento y distribución
de pedidos. En este tipo de escenario, podría tener varios publicadores
recibiendo pedidos de mercancías. Estos pedidos se replican entonces a un
almacén central donde se despachan los pedidos. El almacén puede tratar los
datos como de sólo lectura y requiere nueva información en forma periódica.
Con el uso de la opción de actualización inmediata en el suscriptor se pierde
aún más la autonomía de sitio, pero se reduce el tiempo en el cual los sitios
REPLICACION DE DATOS
9
actualizan sus copias de los datos. Para hacer modificaciones en la base de
datos del suscriptor éstas se realizan (o intentan) también en la base de datos
publicador en una confirmación de dos fases (2PC) por lo que si su
modificación se confirma indica que es válida y luego en cuestión de minutos, o
según la planificación hecha, estos cambios son duplicados a las demás bases
de datos suscriptoras.
Replicación de mezcla
Permite que varios sitios funcionen en línea o desconectados de manera
autónoma, y mezclar más adelante las modificaciones de datos realizadas en
un resultado único y uniforme. La instantánea inicial se aplica a los
suscriptores; a continuación SQL Server 2000 hace un seguimiento de los
cambios realizados en los datos publicados en el publicador y en los
suscriptores. Los datos se sincronizan entre los servidores a una hora
programada o a petición. Las actualizaciones se realizan de manera
independiente, sin protocolo de confirmación, en más de un servidor, así el
publicador o más de un suscriptor pueden haber actualizado los mismos datos.
Por lo tanto, pueden producirse conflictos al mezclar las modificaciones de
datos.
Cuando se produce un conflicto, el Agente de mezcla invoca una resolución
para determinar qué datos se aceptarán y se propagarán a otros sitios. Es útil
cuando: varios suscriptores necesitan actualizar datos en diferentes ocasiones
y propagar los cambios al publicador y a otros suscriptores; los suscriptores
necesitan recibir datos, realizar cambios sin conexión y sincronizar más
adelante los cambios con el publicador y otros suscriptores; el requisito de
periodo de latencia de la aplicación es largo o corto; la autonomía del sitio es
un factor crucial.
Es útil en ambientes en los que cada sitio hace cambios solamente en sus
datos pero que necesitan tener la información de los otros sitios. Por ejemplo
podría crearse una base de datos que registre la historia delictiva de individuos.
En cada municipio de Villa Clara, se puede tener una copia de la base de datos
de toda la provincia y no se requiere estar conectado permanentemente a la
base de datos de la instancia provincial.
REPLICACION DE DATOS
10
FACTORES PARA ELEGIR EL MÉTODO DE REPLICACIÓN A
UTILIZAR
En la elección de un método adecuado para la distribución de los datos en una
organización influyen varios factores. Los cuales podemos agruparlos en dos
grupos: factores relacionados con los requerimientos de la aplicación y factores
relacionados con el entorno de red.
Dentro de los factores relacionados con los requerimientos de la aplicación, los
fundamentales son:
o Autonomía
o Consistencia transaccional
o Latencia
La autonomía de un sitio da la medida de cuanto puede operar el sitio
desconectado de la base de datos publicadora. La consistencia transaccional
de un sitio viene dado por la necesidad de ejecutar o no inmediatamente todas
las transacciones que se han ejecutado en el servidor, o si es suficiente con
respetar el orden de las mismas. La latencia de un sitio se refiere al momento
en que se deben de sincronizar las copias de los datos. ¿Necesitan los datos
estar el 100% en sincronía? O si es admisible determinada latencia ¿de qué
tamaño es aceptable el rezago?
Entre los factores relacionados con el entorno de red están la velocidad de
transmisión de datos de la red, deben considerarse preguntas como ¿Cómo
luce la red? ¿Es rápida? Debe analizarse además la confiabilidad de la red y
responder preguntas como ¿Cuán confiable es la red? Por otra parte en el caso
que los servidores SQL no permanezcan todos los días encendidos, como
pudiera suceder en algunas organizaciones, deben considerarse los horarios
de disponibilidad de cada servidor.
La consideración de estos factores sirve de guía en la configuración del
ambiente de replicación. Además debe considerar las siguientes preguntas:
¿Qué datos se van a publicar? ¿Reciben todos los suscriptores todos los datos
o sólo subconjuntos de ellos? ¿Se deben particionar los datos por sitio? ¿Se
debe permitir que los suscriptores envíen actualizaciones de los datos? Y en
caso de permitirlas ¿Cómo deben implementarse? ¿Quiénes pueden tener
acceso a los datos? ¿Se encuentran estos usuarios en línea? ¿Se encuentran
conectados mediante enlaces caros?
REPLICACION DE DATOS
11
FASES GENERALES PARA IMPLEMENTAR Y SUPERVISAR LA
REPLICACIÓN
A pesar de que existen varias formas de implementar y supervisar la
replicación, y el proceso de replicación es diferente según el tipo y las opciones
elegidas, en general, la replicación se compone de las siguientes fases:
configuración de la replicación
generación y aplicación de la instantánea inicial
modificación de los datos replicados
sincronización y propagación de los datos.
CONSIDERACIONES FINALES
La replicación es muy útil para mejorar la disponibilidad de datos, lo cual
pudiera llevarse al caso extremo, conocido como bases de datos distribuidas
replicadas totalmente, en el cual consiste en la replicación de la base de datos
completa en cada sitio en el sistema distribuido y garantiza notablemente la
disponibilidad de datos, pues el sistema puede continuar operando cuando
exista en servicio al menos uno de los servidores SQL Server. La desventaja es
un alto costo para mantener la consistencia de las copias en cada sitio.
En este documento solo pretendemos aclarar algunos de los aspectos básicos
que cualquiera que se conecte contra una instancia remota de SQL SERVER
debe tener en cuenta.
CONFIGURACIÓN DE RED
En primer lugar debemos conocer la configuración de red que afecta a nuestro
equipo SERVIDOR (el que tiene SQL Server). Si nuestro servidor sale a
Internet por medio de un Router, deberemos hacer NAT para redireccionar las
conexiones entrantes por el puerto 1433 (puerto por defecto de SQL Server) a
nuestro equipo SERVIDOR.
También hay que asegurarse que cualquier firewall habilitado permite las
conexiones contra SQL Server. No hace falta decir que deberemos conocer la
IP Pública por la que sale el Router, para luego conectarnos a ella.
REPLICACION DE DATOS
12
CONFIGURACIÓN EN SQL SERVER
Antes de intentar conectarnos debemos comprobar los siguientes aspectos de
configuración:
1. Tener arrancado el servicio de SQL Server (mediante el administrador de
servicios de SQL Server).
2. Conocer la IP contra la que nos conectamos: Para conectarnos contra una
instancia predeterminada de SQL Server bastaría con poner la IP publica de la
máquina donde se ejecuta, pero si se trata de instancias con nombre es
necesario especificar IP\NombreInstancia. En este caso no nos vale con poner
NombreMaquina\Instancia dado que no se va a conseguir resolver el nombre
de la maquina por Internet.
3. Protocolos habilitados en el Servidor: Comprobar con la herramienta de red
del servidor que se encuentran habilitados los protocolos TCP/IP.
Si no hemos tenido en cuenta alguno de los puntos anteriores, podríamos
obtener el siguiente mensaje de Error:
"No existe el Servidor SQL Server o se ha denegado el acceso al mismo"
Pero como siempre, existen situaciones especiales que pueden hacer que nos
surjan errores pese a tener bien configurado lo anterior.
Lo primero que hay que tener en cuenta es que si en una misma máquina
existen varias instancias de SQL Server, solo la predeterminada corre por el
puerto 1433, y todas las demás escuchan en un puerto que les asigna el
Servicio de Resolución de SQL, por lo que sería necesario reconfigurar el NAT
de nuestro Router para permitir las conexiones a SQL Server por el puerto
correspondiente. Pero además habrá que tener en cuenta algo MUY
IMPORTANTE, y es que el Servicio de Resolución de SQL corre en el Puerto
UDP 1434, por lo que también deberemos hacer NAT a este puerto en
concreto. Sino NO conseguiremos conectarnos.
La asignación de este puerto (la de la instancia) se puede configurar para que
se haga de forma estática o de forma dinámica. Como ya hemos dicho, la
instancia predeterminada de SQL Server escucha solicitudes de clientes de
SQL Server en el puerto 1433 (estático). Sin embargo, si una instancia de SQL
Server se configura para escuchar en un puerto estático y si ya utiliza el puerto
estático especificado otro programa que se ejecuta en el equipo cuando se
REPLICACION DE DATOS
13
inicia SQL Server, SQL Server no escuchará en el puerto estático especificado.
Si utilizamos conexiones a nivel de red local, en principio toda esta asignación
de puertos nos daría igual, salvo por algún firewall que nos este capando la
conectividad, pero es cuando utilizamos conexión vía Internet, cuando
debemos controlar estos aspectos si queremos mantener un cierto grado de
seguridad en nuestro Servidor. Para "solucionar" esto, podríamos hacer que
una instancia determinada escuche en varios puertos estáticos.
Pero antes de ver como configurar una instancia de SQL Server para que
escuche por varios puertos estáticos, es más que conveniente saber cómo
podemos conocer en que puerto corre una instancia determinada.
Conocer en que puerto corre una instancia determinada
Tenemos varias opciones, y todas ellas son interesantes porque puede darse el
caso de que en alguna ocasión no dispongamos de determinadas herramientas
y necesitemos conocer estos datos de algún otro modo.
Desde la Herramienta de red del servidor de SQL Server.
Iniciamos la Herramienta de red del servidor desde Inicio, Programas, Microsoft
SQL Server, Herramienta de red del servidor o también desde Inicio, Ejecutar y
en el cuadro Abrir escribimos svrnetcn.exe y hacemos clic en Aceptar.
Hacemos clic en la ficha General, seleccionamos de la lista nuestra instancia
de SQL Server.
En el cuadro de lista Protocolos habilitados, hacemos clic en TCP/IP y a
continuación clic en Propiedades.
Mediante una instrucción de red en Windows XP.
Si abrimos ms-dos y ejecutamos la instrucción netstat -abn en el servidor,
también podremos comprobar en qué puerto está corriendo una instancia
determinada de SQL Server.
La opción -b que es la que muestra el ejecutable y el puerto de escucha, solo
está disponible en Windows XP.
Adicionalmente si no nos encontramos en el servidor, podemos lanzar contra él
desde nuestra máquina, la instrucción osql -S nombre_instancia -U sa. Esta
instrucción nos abre una conexión contra la instancia indicada a modo de
analizador de consultas. No es necesario que efectuemos ninguna consulta,
porque lo único que nos interesa es que hemos abierto una conexión desde
REPLICACION DE DATOS
14
nuestra maquina hacia el Servidor, por lo que si ahora hacemos un netstat -abn
en nuestra máquina, y consultamos el resultado del comando, buscando la
entrada que hace referencia al ejecutable [osql.exe] podremos ver las Ip de
origen y destino así como los puertos por los que se establece la conexión.
Configurar el puerto de escucha de una instancia de SQL Server
Ahora sí, para configurar el puerto de forma estática, accedemos mediante la
Herramienta de red del servidor a las propiedades de TCP/IP de nuestra
instancia y pulsamos propiedades, el puerto que aparece como predeterminado
es el puerto estático que se está utilizando, si queremos asignar varios, solo
debemos ir añadiéndolos uno detrás de otro, seguidos por comas, por ejemplo:
1433,5000
Nota 1: Si el protocolo TCP/IP está deshabilitado, lo habilitamos ahora. Para
ello, clic en TCP/IP en el cuadro de lista Protocolos deshabilitados y a
continuación, clic en Habilitar.
Nota 2: El puerto estático que especifiquemos no debe ser igual que el puerto
dinámico en el que actualmente este escuchando otra instancia de SQL Server.
Por ejemplo, si una instancia de SQL Server escucha en el puerto TCP/IP
dinámico 1400, escribiremos por ejemplo 1500 para el nuevo puerto estático.
Si lo que queremos es que la asignación de puerto se haga de forma dinámica,
deberemos poner el cero como puerto predeterminado.
Siempre que modifiquemos alguno de estos puertos, a continuación deberemos
reiniciar la instancia de SQL Server.
REPLICACION DE DATOS
15
CONFIGURACIONES NECESARIAS PARA REALIZAR LA
REPLICA
CREANDO PUBLICACION EN EL SERVIDOR
Como primer paso se ingresar a SQL Managment Studio desde el Servidor.
Se debe loguear con el usuario y contraseña establecidos durante la
instalación.
REPLICACION DE DATOS
16
Si no hay dificultades con la cuenta, se establece la conexión al Servidor
Ya con la conexión establecida correctamente, se procede a crear una base de
datos.
REPLICACION DE DATOS
17
Creando la Base de Datos:
Para el ejemplo actual, se utiliza la Base de Datos: proyecto
REPLICACION DE DATOS
18
Con la base de datos creada correctamente se procede a crear una tabla
sencilla.
REPLICACION DE DATOS
19
Nombrando la tabla.
Tabla creada correctamente dentro de la base de datos.
Se procede a llenar la tabla con datos. Para ello, se da clic derecho sobre la
tabla, y se debe seleccionar la opción Editar las primeras 200 filas.
REPLICACION DE DATOS
20
Agregando registros a la tabla:
REPLICACION DE DATOS
21
PUBLICACION DEL SERVIDOR
Ya contando con la base de datos y la tabla correspondiente, se puede realizar
la publicación de la base de datos.
Se da clic sobre la carpeta Replicación, luego clic sobre Publicaciones Locales.
A continuación se da clic derecho sobre la opción Nueva Publicación.
REPLICACION DE DATOS
22
Se inicia el asistente para la publicación de la base de datos.
Se debe buscar la base de datos a publicar.
REPLICACION DE DATOS
23
Después de ello se debe elegir el tipo de publicación a utilizar, para este caso,
Publicación de Mezcla (en la cual la réplica no solo será una copia fiel del
servidor, sino además cuando este caiga o este fuera de la conexión, la
maquina suplirá al servidor en todos las actualizaciones que los usuarios
establezcan).
Se deben seleccionar las versiones de SQL que utilizaran los suscriptores del
servidor.
REPLICACION DE DATOS
24
Seleccionar las tablas a publicar.
Debido al tipo de publicación seleccionado (de mezcla), a cada tupla se le
agregará la columna UniqueIdentifier.
REPLICACION DE DATOS
25
Se selecciona la opción Crear una instantánea Inmediatamente.
En las configuraciones de seguridad, se debe introducir el usuario y contraseña
de SQL.
REPLICACION DE DATOS
26
Si todo ha sido correctamente configurado, debería de confirmar la publicación.
CREAR UNA BASE DE DATOS EN LA MAQUINA –REPLICA
REPLICACION DE DATOS
27
Se crea una base de datos en la maquina que se utilizara como Réplica, la cual
debe dejarse sin ninguna tabla, es decir, totalmente vacía, ya que es, en esta
Base de Datos en donde se replicaran todas las tablas de la Base de Datos del
Servidor.
SUSCRIPCION AL SERVIDOR
Teniendo la publicación creada, se debe dar paso a crear la suscripción local.
Clic derecho sobre Suscripciones Locales, y elegir la opción Nuevas
suscripciones.
Se ejecuta el asistente para las suscripciones.
REPLICACION DE DATOS
28
Se selecciona la publicación dentro del Servidor a la cual se le agregara la
suscripción.
Se debe elegir la opción Ejecutar cada agente en su suscriptor.
Buscar la maquina que será nuestro suscriptor local para la Replicación. Para
el ejemplo, la maquina suscriptora será DAFNE-PC\REPLICA
REPLICACION DE DATOS
29
Se debe conectar al suscriptor, mediante la autenticación de la cuenta de SQL
Server.
Se selecciona la Base de Datos vacía que se creó previamente en el suscriptor.
REPLICACION DE DATOS
30
Se llenan los campos para la seguridad del Agente de Mezcla, mediante la
autenticación de la cuenta SQL.
REPLICACION DE DATOS
31
La sincronización del agente entre el Servidor y la Replica debe programarse
de forma continua.
Se debe elegir al suscriptor, en este caso, como Servidor, pues al caer el
servidor central, la replica debe ser capaz de suplirlo en su totalidad
REPLICACION DE DATOS
32
La suscripción si ha sido exitosa, debería mostrar lo siguiente.
REPLICACION DE DATOS
33
REPLICACION DE LA BASE DE DATOS DEL SERVIDOR A LA REPLICA.
Con la publicación y la suscripción se debe poder visualizar las tablas
replicadas de la base de datos que se encuentra en el Servidor, para el
ejemplo, se debe visualizar la tabla personal y sus tuplas, dentro de la base
REPLICACION en la réplica.
LLENAR BASE DE DATOS:
Teniendo la base de datos creada, se procede a llenarla con datos. Se da clic
derecho sobre la base de datos, para el ejemplo la tabla proyecto, clic en la
opción Editar las primeras 200 filas.
REPLICACION DE DATOS
34
Y se empieza a llenar los datos de la tabla.
Para poder observar los datos, se debe hacer clic sobre la opción Seleccionar
las primeras 100 filas.
REPLICACION DE DATOS
35
En efecto se puede observar los datos.
Se dispone a ver los datos en la base de datos REPLICACION, de la maquina
réplica.
REPLICACION DE DATOS
36
Desde la máquina réplica, se agregaran nuevos datos, los cuales tienen que
verse reflejados en el servidor. Para lo cual se deben esperar 60 segundos, en
lo que las actualizaciones se hacen efectivas entre ambos servidores.
Ahora se pueden comprobar los datos en la maquina servidor.
REPLICACION DE DATOS
37
Como se puede observar los códigos entre las tuplas agregadas desde el
servidor y de la réplica no llevan un orden correlativo, pero esta característica
es propia entre la replicación de SQL.
El mismo procedimiento se debe de seguir para el caso de cuando se quiere
eliminar datos de la base de datos, e igualmente se deben reflejar los cambios
entre ambos servidores.
Los cuales también han sido eliminados de la maquina replica.
REPLICACION DE DATOS
38
APLICACIÓN EN LA MAQUINA CLIENTE.
Desde el lado del cliente, se crea una pequeña aplicación en VB.Net, la cual se
utilizara para visualizar los cambios de la tabla personal dentro de la base de
datos replicada
Como se observa en la siguiente captura (Aplicación en ejecución), hasta el
momento se cuentan con cuatro registros dentro de la tabla personal, que son
los que se detallaron en las capturas anteriores.
REPLICACION DE DATOS
39
DISTRIBUCION DE LA RED
Réplica Servidor
Cliente
Se procede a agregar datos desde la aplicación del cliente, los cuales deben
verse reflejados tanto en el servidor como en la réplica.
REPLICACION DE DATOS
40
Datos reflejados en el Servidor:
Datos reflejados en la réplica:
REPLICACION DE DATOS
41
Como se puede observar en el formulario, ya se cuenta con 5 registros en la
tabla.
COMPROBAR CONEXIONES SERVIDOR-REPLICA-CLIENTE
Para poder constatar que la réplica de mezcla efectivamente puede suplir al
servidor, se procede a desconectar al servidor, y dejar únicamente el cliente
conectado a la réplica.
REPLICACION DE DATOS
42
- Desconectando el servidor
Como se puede observar la aplicación muestra un mensaje de error en la
conexión al servidor, y automáticamente conecta a la réplica.
En la realidad cotidiana, este proceso es totalmente transparente al cliente,
pero por razones de estudio se han dejado estos mensajes de error, para poder
monitorear cada paso de la conexión.
- Conectado a la replica
REPLICACION DE DATOS
43
Ahora se procede a desconectar tanto al servidor como a la replica
Se puede observar, que como falta el servidor, la aplicación nuevamente
intenta conectarse a la réplica.
REPLICACION DE DATOS
44
Y debido a que también se desconecto la réplica, nuevamente muestra un error
fatal en la conexión.
Y debido a que la aplicación cliente no tiene conexión a la base de datos,
muestra únicamente el formulario vacío.
Para demostrar que la réplica de mezcla, efectivamente suple al servidor
cuando éste falta, se procede a que la aplicación cliente, agregue datos a la
réplica (Se obviaran los pasos en los que el cliente no se conecta al servidor,
pues están detallados en capturas anteriores).
REPLICACION DE DATOS
45
- Agregando datos a la Réplica.
Se puede observar que ya se cuenta con un nuevo registro en la base de
datos:
REPLICACION DE DATOS
46
Y en efecto, los datos se ven reflejados en la réplica.
Ahora se procede a reconectar el servidor a la red, y la réplica debe ser capaz
de enviarle automáticamente después de 60 segundos, los datos agregados
por el cliente.
REPLICACION DE DATOS
47
CONCLUSIONES
Con todo este proyecto queda demostrado el uso de las réplicas en los
servidores, para el caso particular la Réplica de Mezcla.
La Réplica de Mezcla, además de hacer el back-up de la Base de Datos del
Servidor (comúnmente por razones de seguridad), es capaz de brindar el
mismo servicio que ofrece el Servidor a los clientes, cuando éste por cualquier
motivo se encuentre de baja en las conexiones.
La réplica además de suplirlo en la conexión de una forma completamente
invisible para el Cliente, es a la vez, totalmente capaz de enviarle todas las
modificaciones que la base de datos haya sufrido en su ausencia, cuando éste
entra de nuevo a su papel de servidor central