LinuxParty
La forma más fácil de seguir este tutorial es utilizar un cliente de línea de comandos / cliente SSH (como PuTTY para Windows) y simplemente copiar y pegar los comandos (excepto donde hay que proporcionar información propia como direcciones IP, nombres de host, contraseñas, ...). Esto ayuda a evitar errores tipográficos.
Cómo montar la replicación de base de datos de MySQL
En este tutorial se describe cómo configurar la replicación de bases de datos en MySQL. La replicación MySQL le permite tener una copia exacta de una base de datos desde un servidor maestro en otro servidor (esclavo), y todas las actualizaciones de la base de datos en el servidor principal se replican inmediatamente en la base de datos en el servidor esclavo para que ambas bases de datos están en sintonía. Esto no es una política de copia de seguridad, ya que un accidente emitido mediante el comando DELETE también se llevará a cabo en el esclavo, pero la replicación puede ayudar a proteger contra fallos de hardware.
En este tutorial le mostraré cómo replicar la base de datos exampledb del maestro con la dirección IP 192.168.0.100 a un esclavo. Ambos sistemas (maestro y esclavo) se están ejecutando Debian, sin embargo, la configuración debe aplicarse a casi todas las distribuciones con poca o ninguna modificación.
Ambos sistemas tienen instalado MySQL, y la base de datos exampledb con tablas y datos ya existentes en el maestro, pero no en el esclavo.
Quiero decir primero que esta no es la única manera de crear tal sistema. Hay muchas maneras de lograr este objetivo, pero este es el camino que yo tomo.
1 Configure el Maestro
Primero tenemos que editar el archivo /etc/ mysql/my.cnf. y habilitar la red para MySQL, así MySQL debe escuchar todas las direcciones IP, por lo que comente estas líneas (si existen):
#skip-networking |
Por otra parte tenemos que decirle a MySQL cual base de datos debe escribir los registros (estos registros son usados por el esclavo para ver lo que ha cambiado en el maestro), que archivo de registro debe usar, y hay que especificar que éste servidor MySQL es el maestro. Queremos replicar la base de datos exampledb, por lo que hay poner las siguientes líneas en /etc/mysql/my.cnf:
log-bin = /var/log/mysql/mysql-bin.log |
Luego reinicie MySQL:
/etc/init.d/mysql restart
Tras ingresar a la base de datos MySQL como root y crear un usuario con privilegios de replicación:
mysql -u root -p
Enter password:
Ahora estamos en el shell de MySQL.
GRANT REPLICATION SLAVE ON *.* TO 'slave_user'@'%' IDENTIFIED BY '<some_password>'; (Replace <some_password> with a real password!)
FLUSH PRIVILEGES;
Siguiente (aún en el shell de MySQL) haga lo siguiente:
USE exampledb;
FLUSH TABLES WITH READ LOCK;
SHOW MASTER STATUS;
El último comando mostrará algo como esto:
+---------------+----------+--------------+------------------+ |
Anote esta información (la de file, y position), le hará falta más adelante en el esclavo!
A continuación dejo el shell de MySQL:
quit;
Hay dos posibilidades para obtener las tablas existentes y los datos de exampledb desde el maestro al esclavo. El primero es hacer un volcado de base de datos, la segunda es utilizar el comando LOAD DATA FROM MASTER, desde el servidor esclavo. Este último tiene una desventaja, la base de datos en el maestro puede bloquearse durante esta operación, por lo que si usted tiene una gran base de datos en un sistema de producción de alto tráfico, esto no es lo que quieres, y te recomiendo seguir el primer método en este caso. Sin embargo, este último método es muy rápido, así que voy a describir los dos aquí.
Si quieres seguir el primer método, entonces haga lo siguiente:
mysqldump -u root -p<password> --opt exampledb > exampledb.sql
(Reemplazar <contraseña> con la contraseña real para el usuario root de MySQL Importante: No hay ningún espacio entre -p y <contraseña>!)
Esto creará un volcado SQL del exampledb en el archivo exampledb.sql. Transfiera este archivo a tu servidor esclavo!
Si quieres usar LOAD DATA FROM MASTER, entonces no hay nada que usted debe hacer en estos momentos.
Finalmente tenemos que abrir las tablas en exampledb:
mysql -u root -p
Enter password:
UNLOCK TABLES;
quit;
Ahora, la configuración en el maestro ha terminado. En el esclavo...
SIGUIENTE: Cómo replicar una de base de datos de MySQL (2 de 2)

-
Fedora
- La distribución de Linux Ultramarine 41 basada en Fedora ya está disponible para descargar
- Cómo instalar un intercambiador de entornos de escritorio en Fedora
- Instalar Steam Valve en Fedora
- Fedora KDE es un brillante sistema operativo de escritorio listo para cualquier tipo de usuario.
- Se lanzó Fedora Linux 41 con Linux Kernel 6.11, DNF5, GNOME 47 y más
- Fedora 39 beta ofrece la distribución de Linux con mejor rendimiento que he visto en mucho tiempo
- Fedora lanzó la computadora portátil Fedora Slimbook Linux con pantalla 3K, NVIDIA RTX 3050 Ti
- Fedora 38 Linux nueva versión de esta gran distro, disponible
- AWS de Amazon lanza 'Amazon Linux 2023' basado en Fedora y optimizado para la nube
- Instalar Nginx con PHP5 (y PHP-FPM) y Soporte MySQL en Fedora Linux
- Instalar Nginx con PHP5 (PHP-FPM) y MySQL en Fedora 17
- 20 comandos YUM para la gestión de paquetes
- Servidor Samba eb Fedora 13 con dbsam Backend
- La distro, Fedora Linux, declarada "Bien público digital"
- 26 Comandos de DNF para gestión de paquetes (rpm) en Fedora Linux