Principio y configuración de replicación maestro-esclavo de MySQL

Principio de replicación maestro-esclavo

La replicación maestro-esclavo de la base de datos MySQL se basa en el registro binario de MySQL, y el servidor esclavo que necesita sincronizarse se replica a través del registro bin. Incluye principalmente tres subprocesos (2 subprocesos de E/S, 1 subproceso SQL). Tiene una conexión inevitable con la separación de lectura y escritura de MySQL: primero, se debe implementar la replicación maestro-esclavo y la separación de lectura y escritura de datos solo se puede realizar una vez completada. Un archivo de servidor actúa como servidor maestro y acepta actualizaciones de contenido de los usuarios, mientras que uno o más servidores actúan como servidores esclavos, aceptando el contenido de registro del archivo binlog en el servidor maestro , analizando SQL y volviendo a actualizarlo en el esclavo. servidor . Haga que los datos de los servidores maestro y esclavo sean consistentes.

En pocas palabras, después de que las dos máquinas A y B son maestro-esclavo, los datos se escriben en A , y la otra máquina B también escribirá datos para lograr los pasos de replicación maestro-esclavo de sincronización de datos en tiempo real.

1. Cuando el nodo maestro realiza operaciones de inserción, actualización y eliminación, se escribirá en el binlog en orden.
2.salve está conectado a la biblioteca principal maestra desde la biblioteca.
3. Cuando el binlog del nodo maestro cambia, el hilo de volcado de binlog notificará a todos los nodos esclavos y enviará el contenido del binlog correspondiente a los nodos esclavos.
4. Después de que el subproceso de E/S recibe el contenido del binlog, escribe el contenido en el registro de retransmisión local.
5. El subproceso SQL lee el registro de retransmisión escrito por el subproceso de E/S y realiza las operaciones correspondientes en la base de datos esclava de acuerdo con el contenido del registro de retransmisión.

Configuración de la biblioteca principal

1. server_id establece y habilita los parámetros de binlog

[raíz@localhost ~]# vim /etc/my.cnf

ID_servidor=1

log_bin=mysql_bin

2. Reinicie el servicio mysql.

[root@localhost ~]# systemctl reiniciar mysqld

3. Inicie sesión como usuario autorizado de MySQL.

mysql> otorgar esclavo de replicación en *.* al ide 'rep1'@'192.168.244.%'

Consulta correcta, 0 filas afectadas, 1 advertencia (0,00 seg)

ver información

mysql> mysql> mostrar estado maestro;

Configurar desde la biblioteca

1. Establezca el valor server_id y reinicie el servicio mysql.

[raíz@localhost ~]# vim /etc/my.cnf

ID_servidor=2

[root@localhost ~]# systemctl reiniciar mysqld

2. Configurar la sincronización de la biblioteca maestro-esclavo

mysql> cambiar maestro a

MASTER_HOST='192.168.244.146',

PUERTO_MAESTRO=3306,

MASTER_USER='rep1',

MASTER_PASSWORD='SombreroRojo@123',

MASTER_LOG_FILE='mysql-bin.000003',

MASTER_LOG_POS=154;

3. Inicie el interruptor de sincronización de la biblioteca esclava.

mysql> iniciar esclavo;

Consulta correcta, 0 filas afectadas (0,00 s)

comprobar estado

mysql> mostrar estado de esclavo;

Supongo que te gusta

Origin blog.csdn.net/m0_70940822/article/details/131950482
Recomendado
Clasificación