Cómo configurar la replicación de MySQL (maestro-esclavo) en RHEL, CentOS, Fedora

Cómo configurar la replicación de MySQL (maestro-esclavo) en RHEL, CentOS, Fedora

El siguiente tutorial tiene como objetivo proporcionarle una guía sencilla paso a paso para configurar MySQL. ( Maestro-Esclavo. Replicación. en RHEL 6.3/6.2/6.1/6/5.8. CentOS 6.3/6.2/6.1/6/5.8. y Fedora 17,16,15,14,13,12. utilizando la última versión de MySQL. Esta guía está especialmente escrita para el sistema operativo CentOS 6.3. pero también funciona con versiones anteriores de distribuciones de Linux. con MySQL 5.x.

ACTUALIZAR:. Si está buscando Replicación maestro-esclavo MariaDB bajo CentOS/RHEL 7 y Debian 8 y sus derivados como Ubuntu, siga esta guía Configuración de replicación maestro-esclavo MariaDB.

 replicación de mysql en Linux  replicación de mysql en Linux Replicación maestro-esclavo de MySQL en RedHat/CentOS/Fedora

La Replicación de MySQL. es muy útil en términos de datos Seguridad. Solución de conmutación por error. Copia de seguridad de la base de datos desde el esclavo. Análisis. etc. Usamos lo siguiente para llevar a cabo el proceso de replicación . En su escenario sería diferente.

  1. Funciona con SO Linux. como CentOS 6.3, RedHat 6.3 o Fedora 17
  2. El maestro y el esclavo son CentOS 6.3. Servidores Linux.
  3. La dirección IP maestra es: 192.168.1.1.
  4. La dirección IP esclava es: 192.168.1.1. 1.2.
  5. El maestro y el esclavo están en la misma red LAN.
  6. El maestro y el esclavo tienen la versión MySQL. instalado.
  7. Master permite conexiones MySQL. remotas en el puerto 3306.

Tenemos dos servidores, uno es Maestro. con IP. ( 192.168.1.1. y otro es esclavo. como ( 192.168.1.2 ). Hemos dividido el proceso de configuración en dos fases para facilitarte las cosas, en la Fase I. configuraremos el servidor Maestro. y en la Fase II. con Servidor esclavo. Comencemos el proceso de configuración de la replicación.

Fase I: Configurar el servidor maestro (192.168.1.1) para la replicación

En la Fase I. veremos la instalación de MySQL. configurando Replicación. y luego verificando la replicación.

Instale un MySQL en el servidor maestro

Primero, proceda con MySQL. instalación usando el comando YUM. Si ya tiene la instalación de MySQL, puede omitir este paso.

# yum install mysql-server mysql Configure un MySQL en Master Server freestar.config.enabled_slots.push (LocationName: “tecmint_incontent”, slotId: “tecmint_incontent” );

Abra el archivo de configuración my.cnf. con el editor VI.

# vi/etc/my.cnf

Agregue las siguientes entradas debajo [mysqld]. y no olvides reemplazar tecmint. con el nombre de la base de datos que te gustaría replicar en Slave.

server-id = 1 binlog-do-db = tecmint. relay-log =/var/lib/mysql/mysql-relay-bin relay-log-index =/var/lib/mysql/mysql-relay-bin.index log-error =/var/lib/mysql/mysql.err master-info-file =/var/lib/mysql/mysql-master .info relay-log-info-file =/var/lib/mysql/mysql-relay-log.info log-bin =/var/lib/mysql/mysql-bin

Reinicie MySQL. servicio.

#/etc/init.d/mysqld reiniciar

Inicie sesión en MySQL. como usuario root. y cree el usuario esclavo. y otorgue privilegios para la replicación. Reemplace slave_user. con user y your_password. con contraseña.

# mysql-u root-p mysql> GRANT REPLICATION SLAVE ON *. * TO ‘ slave_user. @ ‘%’ IDENTIFICADO POR ‘ your_password. ‘; mysql> PRIVILEGIOS DE FLUSH; mysql> DESCARGAR TABLAS CON BLOQUEO DE LECTURA; mysql> MOSTRAR ESTADO MAESTRO; +——————+———-+————–+——————+ | Archivo | Posición | Binlog_Do_DB | Binlog_Ignore_DB | +——————+———-+————–+——————+ | mysql-bin.000003. | 11128001. | tecmint | | +——————+———-+————–+——————+ 1 fila en el conjunto (0.00 seg) mysql> salir;

Escriba el archivo ( mysql-bin.000003. y la posición ( 11128001. números, los solicitamos más adelante en el servidor esclavo. A continuación, aplique READ LOCK. a las bases de datos para exportar toda la base de datos y la información de la base de datos maestra con el comando mysqldump.

# mysqldump-u root-p–todas las bases de datos–master-data>/root/dbdump.db

Una vez que haya volcado todas las bases de datos, ahora vuelva a conectarse a mysql como usuario root y desbloquee tablas.

mysql> UNLOCK TABLES; mysql> salir;

Cargue el archivo de volcado de la base de datos en el servidor esclavo. ( 192.168.1.2. mediante el comando SCP.

scp/root/dbdump.db [correo electrónico protegido]:/root/

Eso es todo, hemos configurado correctamente el servidor Maestro. procedamos a la sección Fase II.

Fase II: Configurar servidor esclavo ( 192.168.1.2) para Replicación

En Fase II. hacemos la instalación de MySQL. configuramos Replicación. y luego verificando la replicación.

Instale un MySQL en el servidor esclavo

Si no tiene MySQL. instalado, entonces instálelo usando el comando YUM.

# yum install mysql-server mysql Configurar un MySQL en un servidor esclavo

Abra el archivo de configuración my.cnf. con el editor VI.

# vi/etc/my.cnf

Agregue el siguientes entradas en la sección [mysqld]. y no olvides reemplazar la dirección IP. del servidor maestro. tecmint. con el nombre de la base de datos, etc., que le gustaría replicar con Master.

server-id = 2 master-host = 192.168.1.1. master-connect-retry = 60 master-user = esclavo_user. master-password = su contraseña. replicate-do-db = tecmint. relay-log =/var/lib/mysql/mysql-relay-bin relay-log-index =/var/lib/mysql/mysql-relay-bin.index log-error =/var/lib/mysql/mysql.err master-info-file =/var/lib/mysql/mysql-master .info relay-log-info-file =/var/lib/mysql/mysql-relay-log.info log-bin =/var/lib/mysql/mysql-bin

Ahora importe el archivo de volcado que exportamos comando anterior y reinicie el servicio MySQL.

# mysql-u root-p Inicie sesión en MySQL. como usuario root y detenga el esclavo. Luego dígale al esclavo. dónde buscar el archivo de registro maestro. que hemos escrito en el maestro con MOSTRAR ESTADO DEL MAESTRO. comando como Archivo ( mysql-bin.000003. y Posición ( 11128001. números. Debe cambiar 192.168.1.1. a la dirección IP. del servidor maestro. y cambiar el usuario. y contraseña. en consecuencia.

# mysql-u root-p mysql> parada de esclavo; mysql> CAMBIAR MAESTRO A MASTER_HOST = ‘ 192.168.1.1 ‘, MASTER_USER = ‘ esclavo_usuario ‘, MASTER_PASSWORD = ‘ su contraseña ‘, MASTER_LOG_FILE = ‘ mysql-bin.000003. , MASTER_LOG_POS = 11128001. mysql> inicio esclavo; mysql> mostrar estado de esclavo \ G ************************** 1. fila ************* ************** Slave_IO_State: Esperando que el maestro envíe el evento Master_Host: 192.168.1.1. Master_User: slave_user Master_Port: 3306 Connect_Retry: 60 Master_Log_File: mysql-bin.000003 Read_Master_Log_Pos: 12345100 Relay_Log_File: mysql-relay-bin.000002 Relay_Log_Pos: 11381900 Relay_Master_Log_File: mysql-bin.000003 Slave_IO_Running_Estilo: “Sí”.. Replicate_Ignore_DB: Replicate_Do_Table: Replicate_Ignore_Table: Replicate_Wild_Do_Table: Replicate_Wild_Ignore_Table: Last_Errno: 0 Last_Error: Skip_Counter: 0 Exec_Master_Log_Pos: 12345100 Relay_Log_Space: 11382055 Until_Condition: Ninguno Until_Log_File: Until_Log_Pos: 0 Master_SSL_Allowed: No Master_SSL_CA_File: Master_SSL_CA_Path: Master_SSL_Cert: Master_SSL_Cipher: Master_SSL_Key: Seconds_Behind_Master: 0 Master_SSL_Verify_Server_Cert: No Last_IO_Errno: 0 Last_IO_Error: Last_SQL_Errno: 0 Last_SQL_Error: 1 de fila en el conjunto (0,00 seg )

Verificación de la replicación de MySQL en el servidor maestro y esclavo

Es muy importante saber que la replicación está funcionando perfectamente. En el servidor maestro. cree una tabla e inserte algunos valores en ella.

En el servidor maestro, mysql> crear la base de datos tecmint; mysql> use tecmint; mysql> CREAR TABLA empleado (c int); mysql> INSERT INTO empleado (c) VALORES (1); mysql> SELECT * FROM employee; +——+ | c | +——+ | 1 | +——+ 1 fila en conjunto (0.00 seg) En el servidor esclavo

Verificando el ESCLAVO. al ejecutar el mismo comando, devolverá los mismos valores en el esclavo también.

mysql> use tecmint; mysql> SELECT * FROM employee; +——+ | c | +——+ | 1 | +——+ 1 fila en conjunto (0.00 seg)

Eso es todo, finalmente ha configurado MySQL Replication. en unos simples pasos. Puede encontrar más información en MySQL Replication Guide.