1 preparación
Consulte la publicación del blog anterior, debería haber instalado MySQL y copiado una nueva máquina virtual,
主库地址: 192.168.56.101
主库地址: 192.168.56.102
2 Configuración de la biblioteca principal
2.1 Crear una cuenta de sincronización en el maestro
# 赋予账号 repl replication slave 权限, 其它 slave 服务器可以通过这个账号来访问 master
grant replication slave on *.* to 'repl'@'192.168.56.102' identified by
'your password';
Tenga en cuenta que la dirección IP aquí es esclava.
2.2 Configure el nodo maestro, abra la
vim /etc/my.cfg
configuración de binlog de la siguiente manera: abra el binlog, establezca la identificación del nodo:
log-bin=mysql-bin # 日志文件名前缀
server-id=1 # 在集群中的唯一id,值可以为1~2^32-1的整数
2.3 Reinicie el servicio mysql
systemctl restart mysqld
2.4 Ver el estado de la biblioteca principal
mysql> SHOW MASTER STATUS;
+------------------+----------+--------------+------------------+-------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB | Executed_Gtid_Set |
+------------------+----------+--------------+------------------+-------------------+
| mysql-bin.000001 | 154 | | | |
+------------------+----------+--------------+------------------+-------------------+
3 Configuración de la biblioteca
3.1 Configurar la identificación del servidor esclavo
# vim /etc/my.cfg
server-id=2 # 在集群中的唯一id,值可以为1~2^32-1的整数
Reinicie el servicio mysql:
systemctl restart mysqld
3.2 Ejecute la instrucción CHANGE MASTER TO para configurar la biblioteca principal sincronizada
CHANGE MASTER TO
MASTER_HOST='192.168.56.101', # master 的 ip
MASTER_USER='repl',
MASTER_PASSWORD='your password';
3.3 Abra la biblioteca esclava configurada aquí
START SLAVE;
Ver el estado del esclavo:
SHOW SLAVE STATUS;
4 Problemas con la replicación
Note] Generated uuid: '5348c44b-c0a4-11e9-bb3d-0800275e32c6', server_start_time: 1111544684596399254, bytes_sent: 71674160
2019-08-17T04:06:01.595
Esto es cuando mi máquina virtual se clona para que los directorios mysql de maestro y esclavo sean los mismos, arreglo:
cd /var/lib/mysql
mv auto.cnf auto.cnf.bac
systemctl restart mysqld # 重启 mysql
Puede consultar el /var/log/mysqld.log
archivo de registro para encontrar problemas en la ejecución de mysql.
Este paso debería estar bien. Ahora cree una nueva base de datos y una tabla en el maestro, y el esclavo puede verlas sincrónicamente.
Referencia: Resumen de errores de replicación maestro-esclavo