Desarrollo del programa

MySQL 5.5 Base de datos Master Slave Sync Tutorial

El líder de la empresa dijo que quería hacer una búsqueda sincronizada en la base de datos, obtener tutoriales de Internet, los resultados de Baidu n veces no funcionan, también borracho, Google todavía puede parecer bien, abajo [...]

Catálogo de artículos

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