Replicacion Master – Slave Mariadb

¿En qué podemos ayudarte?
< Regresar
Estás aquí:
Imprimir

Requisitos

Misma version de mariadb ambos servers

Configuracion en el  Master

nano /etc/my.cnf
log-bin
server_id=1
replicate-do-db=amorcitocorazon
bind-address=192.168.100.3
systemctl restart mariadb mysql -u root -p
CREATE USER 'slave'@'localhost' IDENTIFIED BY 'SlavePassword';
GRANT REPLICATION SLAVE ON *.* TO slave IDENTIFIED BY 'SlavePassword' WITH GRANT OPTION;
FLUSH PRIVILEGES;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
mysqldump -u root -p amorcitocorazon> amorcitocorazon-dump.sql mysql -u root -p
UNLOCK TABLES;
exit;
mysql_upgrade -u root -p

Configuracion del  Slave

mysql -u root –p
CREATE DATABASE amorcitocorazon; 
CREATE USER 'slave'@'localhost' IDENTIFIED BY 'SlavePassword'; 
GRANT ALL PRIVILEGES ON amorcitocorazon.* TO 'slave'@'localhost' WITH GRANT OPTION; 
FLUSH PRIVILEGES; 
exit;
mysql -u root -p amorcitocorazon < amorcitocorazon-dump.sql  nano /etc/my.cnf.d/server.cnf
server_id=2
replicate-do-db=amorcitocorazon
systemctl restart mariadb
mysql_upgrade -u root -p
mysql -u root -p
CHANGE MASTER TO 
-> MASTER_HOST='192.168.100.3', 
-> MASTER_USER='slave', 
-> MASTER_PASSWORD='4dE6A#4.W$s', 
-> MASTER_PORT=3306, 
-> MASTER_LOG_FILE='mxserver1-bin.000002', (este dato se toma del SHOW MASTER STATUS; que se lanzo en el master)
-> MASTER_LOG_POS=84455, (este dato se toma del SHOW MASTER STATUS; que se lanzo en el master)
-> MASTER_CONNECT_RETRY=10, 
-> MASTER_USE_GTID=current_pos; 
START SLAVE; 
SHOW SLAVE STATUSG;

****STOP SLAVE;*** Detiene la replicacion

Ahora para probar hay que crear entradas en el master y ver que se repliquen

Si hay errores, hay que ir viendo la salida del SHOW SLAVE STATUSG; para darnos una idea.

Posibles errores al copiar que mande un problema de duplicado en la llave, si este es el caso, hay que revisar que en las 2 bases master y slave existan los registros.

Por ejemplo si el error fue en el registro 1171 lanzar un query en ambos servers

select * from wp_itsec_logs where id=1711; (datos tomados de la salida del statusg)

si existen en ambos se puede ignorar los duplicados, para ignorar todos los duplicados editar el server.cnf

nano /etc/my.cnf.d/server.cnf

slave-skip-errors=1062

skip-slave-start

systemctl restart mariadb
mysql -u root -p
START SLAVE; 
SHOW SLAVE STATUSG; (monitorear)
exit;

 

Table of Contents

Deja un comentario