- El sistema de máquina virtual CentOS7, mysql usa mariadb.
- La base de datos principal 192.168.1.7, la base de datos secundaria 192.168.1.8.
- Asegúrese de que el puerto 3306 del firewall de la máquina virtual esté habilitado.
- Para los principiantes, todavía hay muchos elementos de configuración que no he estudiado en profundidad, este artículo es solo para referencia.
Uno, la base de datos principal
1. Crear usuario
GRANT REPLICATION SLAVE ON *.* TO 'voyager'@'192.168.1.%' IDENTIFIED BY '123';
Nombre de usuario: voyager, contraseña: 123, IP de acceso permitido 192.168.1.% (Según él mismo)
2. Crea dos bases de datos
CREATE DATABASE voyager1;
CREATE DATABASE voyager2;
Principalmente para ilustrar la sincronización de múltiples bases de datos.
3. Modificar la configuración
vim /etc/mysql/my.cnf
[mysqld]
server-id=7
log-bin=log
binlog-do-db=voyager1
binlog-do-db=voyager2
binlog-ignore-db=mysql
##新增, 还没研究
//binlog-format=row //
//bind-address=0.0.0.0//
//relay-log//
systemctl restart mariadb
4. Verificar el estado
show master status;
+------------+----------+-------------------+------------------+
| File | Position | Binlog_Do_DB | Binlog_Ignore_DB |
+------------+----------+-------------------+------------------+
| log.000001 | 245 | voyager1,voyager2 | mysql |
+------------+----------+-------------------+------------------+
Recuerde los valores de Archivo y Posición .
En segundo lugar, de la base de datos
1. Crea una base de datos
Sobre la base de la parte superior para crear la base de datos voyager1
, voyager2
.
2. Modificar la configuración
-
Agregar ID de servidor
vim /etc/my.cnf
[mysqld] server-id=8
systemctl restart mariadb
-
Agregar información de la base de datos maestra
stop slave ;
change master to master_host='192.168.1.7', master_user='voyager', master_password='123', master_port=3306, master_log_file='log.000001', master_log_pos=245;
Aquí los dos últimos parámetros a archivos y de posición valoresstart slave ;
3. Ver estado
show slave status\G
*************************** 1. row ***************************
Slave_IO_State: Waiting for master to send event
Master_Host: 192.168.1.7
Master_User: voyager
Master_Port: 3306
Connect_Retry: 60
Master_Log_File: log.000001
Read_Master_Log_Pos: 597
Relay_Log_File: mariadb-relay-bin.000004
Relay_Log_Pos: 523
Relay_Master_Log_File: log.000001
Slave_IO_Running: Yes
Slave_SQL_Running: Yes
En este momento, ver dos tipos Sí significa éxito.
Luego, vaya a la base de datos principal para crear una tabla, ¡y compruébelo en la base de datos!