Date post: | 21-Oct-2015 |
Category: |
Documents |
Upload: | xavy-bohorquez |
View: | 157 times |
Download: | 2 times |
UNIVERSIDAD REGIONAL AUTÓNOMA DE LOS ANDES
EXTENSIÓN SANTO DOMINGO
FACULTAD DE SISTEMAS MERCANTILES
CARRERA INGENIERÍA EN SISTEMAS
MODULO DE DISTRIBUCIÓN DE DATOS
TEMA:
REPLICACIÓN DE UNA BASE DE DATOS CON SQL SERVER 2008
REPLICACIÓN MEZCLA
AUTOR:
FRANKLIN JAVIER BOHÓRQUEZ VERA
TUTOR:
ING. CARLOS SAMPEDRO
Enero, 04 del 2014
PERIODO OCTUBRE – MARZO
1. INTRODUCCIÓN
La replicación de Microsoft® SQL Server es comúnmente utilizada para distribuir datos a
través de la infraestructura para acercar los datos a los usuarios.
Los administradores de base de datos que tengan implementados esquemas de replicación
con versiones previas de SQL Server podrán aprender acerca de las mejoras para configurar
y administrar la replicación más fácilmente. Estas mejoras introducen también capacidades
nuevas para distribuir datos.
Un buen número de aplicaciones informáticas están accesibles a través de la red, siguiendo
un modelo cliente-servidor. En algunos casos, tiene gran importancia que tales servicios se
presten de manera continua. Para esto, se deben utilizar técnicas de replicación.
La replicación es un mecanismo utilizado para propagar y diseminar datos en un ambiente
distribuido, con el objetivo de tener mejor performance y confiabilidad, mediante la
reducción de dependencia de un sistema de base de datos centralizado.
Para garantizar que una aplicación distribuida sea altamente disponible (es decir, que pueda
proporcionar servicio de manera continua) se deben instanciar múltiples réplicas de ésta en
distintos ordenadores. Se debe conseguir que cada uno de los ordenadores que mantenga una
réplica de la aplicación sea independiente del resto ante la ocurrencia de fallos.
La replicación de la información en una BDD apunta a aumentar la disponibilidad de la
información. Esta disponibilidad puede observarse desde dos perspectivas:
Aumentar el paralelismo en las consultas, dado que la misma información residirá en
más de una localidad de la red.
Mejorar la disponibilidad de los datos ante eventuales caídas de nodos de la red.
2. OBJETIVOS
2.1. GENERAL
Demostrar mediante un tutorial textual y grafico la replicación mezcla de una base de
datos y demostrar la variedad que proporciona la misma para compartir datos entre
equipos de la misma red y con una misma base datos.
2.2. ESPECÍFICOS
a) Aplicar la réplica de tipo mezcla.
b) Identificar paso a paso el proceso para establecer la réplica de la base de datos.
c) Obtener cambios de datos tanto en la maquina servidor como en la maquina cliente,
en cualquier campo o tabla.
3. FUNDAMENTACIÓN CIENTÍFICA
Replicación de mezclas
Este tipo de Replicación ofrece la mayor cantidad de autonomía del sitio y puede aceptar la
mayor; no obstante, tiene la menor cantidad de consistencia transaccional. La Replicación de
mezcla permite que cada sitio realice cambios en su copia local de los datos duplicados. En
cierto punto, las modificaciones del sitio se envían a la base de datos de publicación, en donde
se mezclan con las modificaciones de otros sitios. Tarde o temprano, todos los sitios reciben
las actualizaciones de los demás sitios. Esto se conoce como convergencia de datos. Las
modificaciones de todos los sitios convergen, y tarde o temprano todos los sitios tienen la
misma información.
Se ha diseñado principalmente para las aplicaciones móviles o de servidores distribuidos que
pueden encontrarse con conflictos de datos. Los escenarios más frecuentes son: el
intercambio de datos con usuarios móviles, las aplicaciones de punto de venta (POS) a
consumidores, y la integración de datos de varios sitios.
(Monge, 2005)
(Microsoft, 2006)
(Ruiz, 2007)
4. DESARROLLO
Configuración y replicación de tipo mezcla de una base de datos.
Para realizar una réplica de BD en SQL Server 2008, debemos configurar ciertos campos
para evitar problemas de conexión entre los equipos de la red.
En mi caso opto por lo siguiente, teniendo en cuenta que en ambos equipo tengamos
la misma versión de motor de base de datos a utilizar (en nuestro caso SQL SERVER
2008), recalcando que vamos a hacer uso de un equipo virtual en motor como
VirtualBox, y su equipo anfitrión ambos con un SO Windows 7 Ultimate. Ubicando
los equipos también dentro de un mismo grupo de trabajo en este caso será
“XAVYS@NET”
Como segundo punto verificamos que ambos equipos mantenga conexión entre sí,
para poder establecer las conexiones de los motores de base de datos.
En la máquina virtual vamos a escoger la opción de red de tipo “ADAPTADOR
PUENTE”, ubicando el tipo de conexión a utilizar en mí caso como utilizo mi
conexión Wi-Fi, utilizo mi adaptador de red inalámbrica.
Verificar que exista una comunicación y compartición de archivos en el grupo de
trabajo.
Configuramos un usuario con autenticación de SQL Server, en el equipo que nos
servirá tanto como Cliente y como Servidor.
Servidor y Cliente el mismo proceso
En nuestro caso vamos a utilizar nuestro usuario creado al momento de instalar nuestro SQL
como administrador que por default es el usuario “sa”, y la contraseña que hayamos ubicado
al momento de configurar el modo de autenticación mixto.
Una vez dentro de ambos equipos ya tenemos culminada la primera parte de la configuración,
tomando en cuenta que estos pasos previos deben realizarse tanto en la máquina virtual como
en la principal. (PRINCIPAL Y FROST), correspondiente a los nombres de nuestros equipos.
Adicional a lo indicado debemos realizar unos ajustes en los servicios de nuestros
equipos (SERVIDOR-CLIENTE). En la barra de ejecución, ejecutamos servicios,
buscamos el servicio de Enrutamiento y Acceso remoto, y procedemos a su
habilitación de forma automática.
De igual forma usaremos el mismo modo
para configurar el servicio de Administrador
de conexión automática de acceso remoto, y
lo ubicamos también de tipo de inicio
automática.
Por otro lado realizamos una pequeña configuración en el Administrador de
configuración de SQL Server 2008. Realizando la habilitación de cada una de las
gráficas indicadas a continuación.
Como vemos los 3 protocolos deben mantenerse de la misma forma y con la
habilitación de cada uno de sus interfaces, luego simplemente reiniciamos los 3
servicios. Tomando en cuenta que este proceso se lo debe realizar tanto en el equipo
a usar como Servidor y Cliente.
Para finalizar las configuraciones previas debemos configurar en ambos motores los
siguientes campos, en nuestro SQL con la autenticación del usuario ya configurado
en el panel izquierdo en nuestro gestor damos clic derecho y nos dirigimos hasta la
pestaña FACETAS, en donde escogeremos la opción RemoteDacEnabled, y lo
cambiamos a TRUE.
Configuración de la Replica Mezcla con SQL Server 2008
1) Creamos la base de datos a ser replicada en nuestro equipo servidor a la cual vamos
a ubicarle el nombre “DISTRIBUIDOR”
2) Luego generamos mediante consultas o asistentes las tablas que van a contener los
datos que van a ser replicados en el equipo cliente, y que llevaran las modificaciones
tanto las que se realizan en el cliente como en el servidor; y sus modificaciones
visualizarlas en ambos equipos, en el sentido en el que fueren consultadas.
Como observamos para una configuración y explicación podemos identificar las tablas
dentro de la base generada para nuestra réplica.
3) A continuación nos abriremos paso exclusivamente a la creación de la replicación,
para lo cual en la parte izquierda del SQL Server abriremos las pestaña Replicación,
y luego en publicaciones locales, con un clic derecho escogiendo “Nueva
Publicación”.
4) Damos siguiente seleccionando el nombre de nuestro equipo Servidor como
distribuidor y luego que nuestro agente de SQL se inicie automáticamente, a su vez
dejamos que la replicación se guarde por default en la carpeta asignada por el
programa.
5) Como consiguiente, se nos cargara las bases de datos generada por nuestro equipo
Servidor.
6) Una vez seleccionada e identificada la base a replicar damos siguiente, en donde,
seleccionaremos nuestro tipo de replicación y usaremos la de tipo Mezcla.
7) Escogemos el tipo de compatibilidad con la
que vamos a establecer la réplica, en
nuestro caso como configuramos al
principio ambos motores será SQL Server
2008.
8) Seleccionamos las tablas a las que el suscriptor va a tener a acceso al momento de la
réplica.
9) Como siguiente punto obtendremos una ventana donde simplemente nos indicara que
se creara una identificación única para quien realice la modificación es decir se creara
un campo dentro de cada tabla en donde su marcará esa modificación por una especie
de llave única la cual identifica al equipo que modifico dicho campo tabla o dato.
10) La siguiente ventana es simplemente para establecer condiciones mediante filtros
para realizar una réplica más específica, no generamos ningún filtro.
11) Luego en la ventana de agente de instantáneas lo único que vamos a marcar es la
creación de una instantánea es decir que al momento de generar algún cambio se
visualice en un tiempo de 60 segundos como tiempo máximo de espera o también
podemos establecer rangos de fechas específicas para realizar la réplica.
12) En la siguiente ventana es muy importante establecer bien y de manera correcta cuales
son los accesos, en este caso y en la ventana que nos va a aparecer vamos a configurar
el login de nuestra base de datos y motor SERVIDOR.
Nota: Realizamos la configuración tal como nos muestra la gráfica con los datos de login de
nuestro equipo SERVIDOR.
13) Damos siguiente en la ventanas siguientes hasta que nos pedirá un nombre para la
réplica en mi caso será “PARCIAL”, y como final la generamos.
Si nos aparece una ventana como la siguiente quiere decir que toda nuestra configuración fue
exitosa, de no ser el caso verificar cada uno de los pasos ya indicados y la configuración
previa del equipo.
14) Luego sobre nuestra publicación creada damos clic derecho y generamos una
Suscripción Nueva.
15) Seleccionamos la réplica creada y damos siguiente.
16) Configuramos para que todos los procesos se direccionen desde el equipo servidor
que en este caso es nuestra maquina principal “FROST-PC”
17) Este paso lo considero de vital importancia ya que es donde casi todos desisten o
pierden la replicación al momento de agregar el suscriptor SQL Server, debemos
buscar dentro de los servidores red nuestro equipo con el motor de base de la máquina
virtual que en este caso se llama “PRINCIPAL-PC”
18) Una vez localizado nuestro motor de base de datos cliente logueamos con
autenticación SQL server con los datos del motor de la maquina cliente es decir
“PRINCIPAL-PC”.
19) Teniendo los datos de login correcto
procederemos a crear una base de
datos nueva para que se aplique la
generada en la maquina servidor.
20) En nuestro caso ubicaremos el nombre “REPLICA_PARCIAL”
21) Nuevamente un paso muy importante y para recalcar la generación de permisos y
login de accesos.
22) Como observamos la gráfica debemos configurar esta parte con el login de acceso de
motor de base de datos de nuestro equipo cliente.
23) Realizamos la configuración para que la actualización de datos se genere de manera
permanente y continua.
24) El tipo de suscripcion escogemos la de tipo servidor ya que los datos principales van
a generarse desde un equipo de tal configuracion.
25) Damos clic en siguiente hasta que creemos la suscripción y nos deberá salir una
ventana como la siguiente si todo está correcto.
26) Nos dirigimos a nuestra maquina cliente que en este caso en nuestro equipo llamado
“PRINCIPAL-PC”, ingresamos al SQL Server, y verificamos que debe aparecer la
base de datos llamada “REPLICA_PARCIAL”, la misma que deberá contener cada
una de las tablas y datos generados en el servidor.
Verificación
Equipo Servidor
Como veremos a continuación estamos generando una pequeña prueba de la configuración
realizada en donde vamos a ver los datos de la tabla usuarios en donde el servidor ingreso los
datos.
Los mismos que deberían estar reflejados automáticamente en nuestro equipo CLIENTE.
Equipo Cliente
Ahora realizaremos una modificación en el equipo cliente para ver su modificación desde el
servidor.
Estos datos fueron registrados en equipo CLIENTE. Comprobaremos resultados de réplica
en equipo SERVIDOR.
Comprobando asi que la replica esta funcionando de manera perfecta. Por otro lado una
manera practica de ver el estado de la sicronizacion de nuestra replica es dando clic derecho
sobre nuestra suscripcion y dando clic en ver estado de sincronizacion esto en nuestro equipo
servidor dando como resultado una pantalla como la siguiente indicando que todo esta de
forma correcta.
(DavidAngelGuisbertB, 2011)
(Gupta, 2006)
5. CONCLUSIONES
La replicación es un mecanismo utilizado para propagar y diseminar datos en un ambiente
distribuido, con el objetivo de tener mejor performance y confiabilidad, mediante la
reducción de dependencia de un sistema de base de datos centralizado. Dada la diversidad de
contextos donde se aplican mecanismos de replicación, se puede disponer de una gama de
posibilidades, en vez de utilizar una única forma de replicar datos. Cada uno de los tipos de
replicación se adapta en mayor o menor medida y pueden utilizarse en forma combinada para
un caso específico. Los tipos de replicación disponibles permiten moverse desde contextos
donde los sitios trabajan en forma completamente unos de otros, hasta contextos donde se
requiere una alta consistencia transaccional.
La tendencia actual, además, tiende a administrar sistemas que aparecen "desconectados" o
careciendo de una conexión full-time, lo que agrega un conjunto nuevo de problemas que no
pueden ser tratados con los métodos clásicos empleados anteriormente.
Un objetivo con las BDD es aumentar la disponibilidad de la información, colocando la
misma "cerca" del usuario. Esto significa que la replicación de la información tiende a
aumentar generando más inconvenientes potenciales al momento de su actualización.
Conceptos como seguridad, performance, optimización, casos de uso deben ser tenidos en
cuenta cuando se plantea el esquema de distribución, y en particular el de replicación de este
esquema.
Determinando así que este tipo de configuraciones que vienen incorporadas en los gestores
de base de datos como SQL Server 2008 permiten establecer puntos locales permitiendo
compartir y distribuir una base de datos, permitiendo compartir la información y modificando
datos siempre y cuando el servidor mantenga configurado los accesos a dichas tablas para los
suscriptores finales.
6. BIBLIOGRAFÍA
DavidAngelGuisbertB. (27 de 06 de 2011). Youtube. Obtenido de
http://www.youtube.com/watch?v=pp_N3MGVdrk
Gupta, D. (2006). Tutorial de replicacion de mezcla en SQL Server. España: Computación
y electrónica.
Microsoft. (2006). Microsoft SQL Server. Recuperado el 27 de 11 de 2013, de
http://technet.microsoft.com/es-es/library/ms152565%28v=sql.105%29.aspx
Monge, P. R. (27 de 06 de 2005). Recuperado el 27 de 11 de 2013, de
http://www.itescam.edu.mx/principal/sylabus/fpdb/recursos/r11294.PDF
Ruiz, I. J. (2007). Oocities.org. Recuperado el 27 de 11 de 2013, de
http://www.oocities.org/yasefito/ingenio/SQLSERVER2005.pdf