Download - Replicacion

Transcript
  • Instituto Tecnolgico de

    Veracruz

    Replicacin

    de Bases de

    datos Mysql Bases de datos Avanzadas

    Manuel Absaln Hernndez Corzo E11500347 ngel Salgado Cortes -E11020450

  • Replicacin en MySQL 1

    Introduccin

    MySQL 5 soporta replicacin asncrona unidireccional: un servidor acta como maestro y uno o

    ms actan como esclavos.. El servidor maestro escribe actualizaciones en el fichero de log

    binario, y mantiene un ndice de los ficheros para rastrear las rotaciones de logs. Estos logs sirven

    como registros de actualizaciones para enviar a los servidores esclavos. Cuando un esclavo se

    conecta al maestro, informa al maestro de la posicin hasta la que el esclavo ha ledo los logs en la

    ltima actualizacin satisfactoria. El esclavo recibe cualquier actualizacin que ha tenido lugar

    desde entonces, y se bloquea y espera para que el master le enve nuevas actualizaciones.

    Un esclavo servidor puede servir como maestro si quiere preparar una cadena de replicaciones de

    replicacin.

  • Replicacin en MySQL 2

    Objetivo El objetivo de este proyecto, es lograr una replicacin, en un servidor virtual (VPS), con Ubuntu

    Server x64 1gb de RAM e instalacin de MYSQL con el dominio absa.me y una computadora

    porttil cliente que sera el esclavo. Para lograr una replicacin remota.

    Problemtica Dicha actividad tiene un nivel de complejidad, ya que son 2 sistemas operativos distintos, el

    servidor VPS tiene su IP fija, pero el esclavo no.

    Solucin Para resolver la problemtica del cambio de IP hacia el servidor esclavo hemos optado por usar el

    servicio de NO-IP, el cual nos da un subdominio y mediante un programa en ejecucin apunta

    hacia la IP que nos da nuestro proveedor de Internet.

  • Replicacin en MySQL 3

    Replicacin Remota

    1.- Hacer ping hacia el VPS

    Notamos que la IP de nuestro servidor Maestro es 142.0.42.21

  • Replicacin en MySQL 4

    2.- Configurando el servidor Maestro

    Para acceder nuestro vps entramos por VPN, una vez adentro editamos el archivo

    etc/mysql/my.conf, agregamos las lneas server-id = 1 y log_bin = /var/log/mysql/mysql-bin.log

    Reiniciamos el servicio de mysql

    Con esto est configurado el servidor maestro.

  • Replicacin en MySQL 5

    3.- Configurar la conexin hacia el maestro en Workbench

    Para esto creamos un usuarios llamado absa con acceso remoto, probamos la conexin y vemos

    que se puede acceder desde Workbench del ordenador al servidor VPS maestro.

  • Replicacin en MySQL 6 Tambin crearemos una base de datos que ser la que replicaremos para ello ejecutamos el

    siguiente cdigo

  • Replicacin en MySQL 7

    4.-Crear usuario de replicacin

    Lo siguiente que haremos ser un usuario de replicacin llamado manny y le agregamos el host

    que nos proporciona el servicio de no-ip, y de ah bloqueamos las tablas de la base de datos a

    replicar mostramos el status del maestro, esto es para copiar el log binario y la posicin que leer

    el servidor esclavo, en este caso vemos que es mysql-bin.000008 y la posicin 47358

  • Replicacin en MySQL 8

    5.- Configurando el esclavo

    Con lo anterior ya est configurado el servidor maestro, lo siguiente es configurar el servidor

    esclavo, para ello buscamos el archivo my.ini de nuestra instalacin y editamos el server-id y

    ponemos 2 sealando que ser el servidor numero 2 y eso le indica a mysql que ser un servidor

    esclavo, porque la prioridad la tiene el servidor remoto.

    Reiniciamos el servicio y ya casi est configurado, para ello creamo una base de datos llamada

    como la que tenemos en el servidor maestro

  • Replicacin en MySQL 9

    Ya tenemos las bases de datos con la misma estructura en ambos servidores (maestro y esclavo),

    lo que sigue es configurar el acceso al servidor maestro

    Le proporcionamos los datos del servidor maestro, ip o dominio, usuario, contrasea, log

    binario y la posicin e iniciamos el esclavo.

  • Replicacin en MySQL 10

    6.- Probar la replicacin

    Hasta este punto la replicacin est hecha, el servidor esclavo solo est a la espera de leer los logs

    binarios para saber que operaciones realizar sobre las bases de datos, para ello probaremos con

    unos inserts en el servidor maestro.

    Los seleccionamos:

    Esto est de lado del maestro, el servidor esclavo leer los registros binarios y en la posicin que

    qued har la sincronizacin de los datos, para ver lo que hay en el servidor esclavo abriremos una

    conexin por consola.

  • Replicacin en MySQL 11

    Observaciones. La prueba que hicimos nos sirvi para probar 2 servidores, en diferentes partes del mundo, ya que

    el servidor VPS es de pago y se encuentra alojado en Estados Unidos y que para configurar

    accedemos por VPN, y probamos con un esclavo el cual estaba a nuestro alcance para ver la

    replicacin, pero notamos un problema, que creemos que sucede al cambio de IP, se queda en la

    misma posicin y el servidor VPS cambia constantemente de logs. Y para el cual no hallamos

    solucin pero nos pareci interesante la configuracin de una replicacin no solo en rea local si

    no a travs de internet, y conocimos como las grandes empresas (Google, Yahoo!, Facebook)

    pueden tener datacenters en distintas partes del mundo sincronizados entre si.