Instituto Tecnológico del Norte de
Nayarit
ING. EN TECNOLOGÍAS DE LA INFORMACIÓN Y COMUNICACIONES.
ENERO-JUNIO 2022
Tarea: I1U2
MATERIA: MANUAL DE CONFIGURACION PARA LA REPLICACION EN MYSQ
Asignatura: Bases de Datos Distribuidas
Docente: Jose F. Casillas Lomeli
Estudiante: José Luis Arreola Diaz
Número de control: 201170041
Antes de comenzar
Para realizar la replicación de una o varias bases de datos se debe considerar lo siguiente:
Debes tener por lo menos dos equipos con mysql.
Las versiones de mysql deben ser las mismas en ambos equipos.
Los equipos deben estar conectados a la misma red.
Configuración del maestro
Para realizar la configuración del maestro debes elegir uno de los dos equipos con mysql, en mi
caso será un servidor con Ubuntu server con mysql y phpmyadmin ya instalados
Paso 1: Permitir puerto en firewall con el comando sudo ufw allow mysql
Paso 2: Entrar al archivo de configuración de mysql, se encuentra en /etc/mysql/mysql.conf. para
abrir el archivo se debe escribir el siguiente comando: sudo nano mysqld.cnf.
Paso 3: Una vez abierto el archivo comentaremos con un # el bind-addres y mysqlx-bin-address.
Paso 4: Descomentar server-id y log_bin quitando el # y posterior mente descomentar el binlog-
do-db y escribir el nombre de la base de datos que se desea replicar.
Paso 5: Guardar el archivo y reiniciar mysql con el comando: sudo systemctl restart mysql.
Paso 6: abrir mysql y crear un usuario para la replicación. Ejemplo: créate user
‘nombre_usuario’@’Ip del servidor esclavo’ indentified by ‘contraseña’.
Paso 7: Comprobar el estado del servidor maestro con show master status\G, anotar el mysql-bin
y el numero pos ya que los ocuparas mas adelante.
Configuración del esclavo
Para realizar la configuración del esclavo se utilizó un equipo con la interfaz gráfica de Ubuntu y
mysql previamente instalado, la configuración puede realizarse por la terminal.
Paso 1: Permitir puerto en firewall con el comando sudo ufw allow mysql
Paso 2: Entrar al archivo de configuración de mysql, se encuentra en /etc/mysql/mysql.conf. para
abrir el archivo se debe escribir el siguiente comando: sudo nano mysqld.cnf.
Paso 3: Una vez abierto el archivo comentaremos con un # el bind-addres y mysqlx-bin-address.
Paso 4: Descomentar server-id y log_bin quitando el # y posterior mente descomentar el binlog-
do-db y escribir el nombre de la base de datos que se desea replicar.
Paso 5: Guardar el archivo y reiniciar mysql con el comando: sudo systemctl restart mysql.
Paso 6: abrir mysql y establecer los datos de replicación con:
change master to master_host='Ip del maestro', master_user='Nombre_usuario',
master_password='contraseña_usuario', master_log_file='mysql-bin.XXXXXX', master_log_pos=
xxx;
En los campos master_user y master_password debes colocar el usuario para la replicación creado
en el servidor maestro.
En el campo master_log_file debes escribir el mysql-bin que te proporciono el maestro, al igual
que en el campo master_log_pos.
Paso 7: iniciar replicación con start slave.
Paso 8: comprobar el estado del esclavo con show slave estatus.
Si todo esta correcto debe mostrar la siguiente pantalla
Como se puede observar el esclavo esta conectado al maestro ya que el esclavo está esperando a
que el maestro envié un evento o que es lo mismo, que el maestro inserté datos en una tabla para
poder replicarlo.
Fin del manual.
Problemas que se nos presentaron
Nosotros utilizamos xampp para hacer la replicacion con el servido maestro, la replicacion no se
pudo llevar a acabo con xampp ya que este utiliza mysql y mariadb que no es compatible con
mysql server.