El líder de Yang dijo que quería hacer una búsqueda de sincronización de bases de datos, obtener tutoriales de Internet, los resultados de Baidu no funcionaron, también borracho, Google todavía parece estar bien, abajo Huazai generalmente ordenó el tutorial de sincronización de base de datos mysql 5.5 maestro-esclavo
192.168.21.169
192.168.21.168
II. Configuración del servidor principal MySQL (192.168.21.169)
mysql - urot - p Entrar a la consola MySQL
Crear una base de datos osyunweidb; # Crear una base de datososyunweidb
insertar en mysql.user(Host,Usuario,Password) valores('localhost','osyunweiuser',password('123456'); # Crear un usuarioosyunweiuser
privilegios de flush; # Refrescar la tabla de autorización del sistema
Concedir el esclavo de replicación en * * to 'osyunweidbbak'@'192.168.21.168' identified by '123456' with grant option; # Crear un usuario de sincronización de base de datos maestro-esclavo MySQL, el usuario autorizado osyunweidbbak solo puede acceder a la base de datos por encima del servidor maestro 192.168.21.169 desde 192.168.21.168 y solo tiene permisos de copia de seguridad de la base de datos.
Configurar el archivo my.ini del servidor principal MySQL Ubicación en la raíz mysql
# Edite el archivo de configuración y agregue lo siguiente a la sección [mysqld]
Servidor-ID = 1 # Establezca el id del servidor, 1 para indicar el servidor principal. Nota: Si esta línea ya está en el archivo de configuración original, no necesita agregarla.
Log _ bin =mysql-bin # Inicie el sistema de registro binario MySQ. Nota: Si ya tiene esta línea en el archivo de configuración original, no necesita agregarla. Preste especial atención a lo que escriba en su dirección de registro.
binlog-do - db =osyunweidb # Nombre de la base de datos que necesita ser sincronizada. Si hay más de una base de datos, puede repetir este parámetro, una fila por base de datos.
binlog-ignore - db = mysql Desincronizar la base de datos del sistema mysql
Servicio mysqld restart # Reiniciar MySQL
mysql - u root - p Entrar en la consola de mysql
show master status; Mirar el servidor principal, aparece un mensaje similar al siguiente
+ - -
| archivo | Posición| Binlog _ Do _ DB| Binlog _ Ignore _ DB|
+ - -
| mysql-bin.000019 | 7131 | Osyunweidb | mysql |
+ - -
1 fila en conjunto (0,00 sec)
Nota: Recuerde aquí el valor de File: mysql-bin.000019 y el valor de Position: 7131, que se utilizará más adelante.
Configurar el archivo MySQL.ini del servidor esclavo
# Edite el archivo de configuración y agregue lo siguiente a la sección [mysqld]
Servidor-ID = 2 # Ya hay una línea server-id = 1 en el archivo de configuración, modifique su valor a 2 para indicar que es de la base de datos
Log-bin =mysql-bin # Inicie el sistema de registro binario MySQ. Nota: Si ya tiene esta línea en el archivo de configuración original, no necesita agregarla.Preste especial atención a lo que escriba en su dirección de registro.
replicar-do - db = osyunweidb # Nombre de la base de datos que necesita ser sincronizada. Si hay más de una base de datos, puede repetir este parámetro, una línea por base de datos.
replicar-ignore - db = mysql Desincronizar la base de datos del sistema mysql
Servicio de reinicio mysqld # Reiniciar MySQL
Nota: Después de la versión 5.1.7 de MySQL, ya no se admite escribir el atributo de configuración master en el archivo de configuración my.cnf, solo se necesita escribir la base de datos sincronizada y la base de datos a ignorar.
mysql - u root - p # Ingresar a la consola MySQL
Esclavos detenidos; # Detener el proceso de sincronización esclava
cambiar el maestro a master_host='192.168.21.169',master_user='osyunweidbbak',master_password='123456',master_log_file=''mysql-bin.000019', master_log_pos =7131; # Ejecutar una sentencia de sincronización
Nombre del archivo y ubicación de acuerdo con su situación real
Inicio esclavo; # Activar el proceso de sincronización esclavo
Mostrar el estado de esclavos\ G # Verifique la información de sincronización del esclavo y aparece lo siguiente
* * * * * * * * * * * * * * * * 1. * * * * * * * * * *
Slave _ IO _ State: Esperando que el maestro envíe un evento
Master _ Host: www.example.com
Maestro _ Usuario: osyunweidbbak
El puerto principal: 3306
Conectar _ Retry: 60
Archivo maestro _ log _: mysql-bin.000019
Leer _ Master _ Log _ Pos: 7131
Relay _ Log _ File: MySQLSlave-relay-bin.000002
Relay _ Log _ Pos: 253
Relay _ Master _ Log _ File: mysql-bin.000019
Slave _ IO _ Running: Sí
Slave_SQL_Running: Sí
Replicar _ Do _ DB: osyunweidb
Replicar _ Ignorar _ DB: mysql
Replicación _ Do _ Table:
Replicar _ ignorar _ tabla:
1 fila en conjunto (0,00 sec)
Cuidado con la revisión:
Slave _ IO _ Running: Sí
Slave_SQL_Running: Sí
Los valores de estos dos parámetros anteriores son Sí, lo que significa que la configuración es exitosa.
V. Probar si el servidor maestro-esclavo MySQL tiene éxito en la espera en caliente de dos máquinas
Entrar en el servidor principal MySQL
mysql - u root - p # Ingresar a la consola MySQL del servidor principal
Uso de osyunweidb # Entrar a la base de datos
Prueba CREATE TABLE (id int no es clave primaria nulo, nombre char(20)); # Crear tabla de prueba
Entrar en el servidor MySQL
mysql - u root - p # Ingresar a la consola MySQL
Uso de osyunweidb # Entrar a la base de datos
show tables; # Mirar la estructura de la tabla osyunweidb, verá una tabla nueva, prueba de sincronización de la base de datos exitosa