Академический Документы
Профессиональный Документы
Культура Документы
La réplica de MySQL permite tener una copia exacta de una base de datos de un
servidor principal (maestro) en otro servidor (esclavo), y todas las actualizaciones a la
base de datos en el servidor principal se repliegan inmediatamente a la base de datos
en el servidor auxiliar de modo que ambas bases de datos estén sincronizadas. Esto
no es una política de respaldo porque si se corre un comando de borrado de forma
accidental también será realizado en el esclavo; sin embargo las réplicas pueden
ayudar a proteger contra faltas de hardware. A continuación explicaremos
detalladamente cómo se realizaron las replicas desde el servidor de recursos humanos
hacia el servidor radius.
REQUISITOS PREVIOS
Por firewall
#Denegamos todas las entradas
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
old_passwords=1
# dates replication
log-bin=/var/log/mysql/replication/master-bin
log-bin-index=/var/log/mysql/replication/master-bin.index
server-id=1
binlog-do-db=rrhh
replicate-do-table=rrhh.trabajador
low-priority-updates
innodb_flush_log_at_trx_commit=1
sync-binlog=1
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
Parando MySQL: [ OK ]
Iniciando MySQL: [ OK ]
Comprobación de los logs binarios
+-------------------+----------+--------------+------------------+
+-------------------+----------+--------------+------------------+
| master-bin.000001 | 98 | RRHH | |
+-------------------+----------+--------------+------------------+
Type 'help;' or '\h' for help. Type '\c' to clear the buffer.
mysql>
Al igual que el anterior usuario net_admin creado en el MASTER, este es solo para
poder acceder remotamente a nuestras bases de datos a través de un software para
acceso remoto, como la anterior vez, esto no es necesario para el proceso de replicas,
el acceso remoto puede ayudar bastante cuando no se tiene un amplio conocimiento
de los comandos de mysql, existen herramientas de acceso remoto como SQLyong
Enterprise que es con interfaz grafica el cual nos ayuda bastante.
[mysqld]
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
old_passwords=1
#data replication
log-bin=/var/log/mysql/replication/slave-log.bin
log-bin-index=/var/log/mysql/replication/slave-relay-bin.index
server-id=2
master-port=3306
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
Parando MySQL: [ OK ]
Iniciando MySQL: [ OK ]
Comprobacion de los logs binarios
El comando anterior es muy importante, ya que este nos sirve para la sincronización
entre el master y el esclavo, en master_log_file=’’ debemos poner el numero que esta
en el master al mimento de realizar la comprobación de los logs binarios, en este caso
'master-bin.000001', y en master_log_pos= el tamaño de los bytes, en este caso 98.
Esto se lo realiza en el servidor esclavo.
NOTA: hay que tener en cuenta que la base de datos que queremos replicar del
servidor master debe estar también creada en el servidor esclavo, con el mismo
nombre y con por lo menos la tabla que queremos replicar. Las replicas se dan sobre
actualizaciones, es por eso que la tabla en el esclavo debe tener los mismo elementos
que la tabla en el master.