Вы находитесь на странице: 1из 7

PREGUNTAS Y RESPUESTAS SOBRE REPLICACIN

CMO CONFIGURO EL ESCLAVO SI EL MAESTRO EST EN EJECUCIN Y NO QUIERO PARARLO?


Si ha hecho una copia de seguridad del maestro en algn punto y ha guardado el nombre del log binario y el desplazamiento ( de la salida de SHOW MASTER STATUS) correspondiente a la muestra de datos, use el siguiente procedimiento: Asegrese que el esclavo tiene asignado un ID de servidor nico. Ejecute el siguiente comando en el esclavo, rellenando los valores apropiados en cada opcin: mysql> CHANGE MASTER TO -> MASTER_HOST='master_host_name', -> MASTER_USER='master_user_name', -> MASTER_PASSWORD='master_pass', -> MASTER_LOG_FILE='recorded_log_file_name', -> MASTER_LOG_POS=recorded_log_position; Ejecute START SLAVE en el esclavo.

Si no tiene una copia de seguridad del maestro: Todos los pasos se configuran en el maestro Ejecute este comando: mysql> FLUSH TABLES WITH READ LOCK; Con el bloqueo todava activo, ejecute este comando (o una variacin de l): shell> tar zcf /tmp/backup.tar.gz /var/lib/mysql Ejecute este comando y asegrese de guardar la salida, que necesitar posteriormente: mysql> SHOW MASTER STATUS; Libere el bloqueo: mysql> UNLOCK TABLES;

NECESITA EL ESCLAVO ESTAR CONECTADO TODO EL TIEMPO AL MAESTRO?


No, no hace falta. El esclavo puede caer o quedar desconectado durante horas o das, luego reconectar y leer las actualizaciones. Por ejemplo, puede preparar una relacin maestro/servidor mediante un enlace telefnico que slo est disponible espordicamente y durante cortos periodos de tiempo. La implicacin de esto es, que en un momento dado, el esclavo no garantiza estar sincronizado con el maestro a no ser que tome medidas especiales. En el futuro, tendremos la opcin de bloquear el maestro hasta que al menos un esclavo est sincronizado.

CMO SE LA FECHA DE LA LTIMA CONSULTA REPLICADA POR EL ESCLAVO?


Para un esclavo MySQL , puede leer la columna Seconds_Behind_Master en SHOW SLAVE STATUS. Cuando un flujo SQL esclavo ejecuta un evento ledo del maestro, modifica su propia hora a la hora del evento (esto es el porqu TIMESTAMP se replica bien). En la columna Time en la salida de SHOW PROCESSLIST, el nmero de segundos mostrados por el flujo SQL del esclavo es el nmero de segundos entre la hora del ltimo evento replicado y la hora real de la mquina esclava. Puede usar esto para determinar la fecha del ltimo evento replicado.

QU CUESTIONES DEBO CONSIDERAR AL PREPARAR UNA REPLICACIN BIDIRECCIONAL?


Debe preparar un servidor como maestro y dirigir todas las escrituras al mismo. Luego configure tantos esclavos como quiera, y distribuya las lecturas entre los esclavos y maestro. Tambin puede arrancar esclavos con las opciones --skipinnodb, --skip-bdb, --low-priority-updates, y --delaykey-write=ALL para mejorar la velocidad en el esclavo. En este caso, el esclavo usa tablas no transaccionales MyISAM en lugar de InnoDB y BDB para obtener ms velocidad.

CUNDO Y CMO PUEDE MEJORAR LA REPLICACIN MYSQL EL RENDIMIENTO DE MI SISTEMA?


La replicacin MySQL es ms benfica para sistemas con lecturas frecuentes y escrituras infrecuentes. En teora, usando una inicializacin un maestro/mltiples esclavos, puede escalar el sistema aadiendo ms esclavos hasta que se queda sin ancho de banda, o la carga de actualizacin crece hasta el punto que el maestro no puede tratarla. Para determinar cuntos esclavos puede tener antes que los beneficios empiecen a notarse, necesita conocer el patrn de consultas, y determinar empricamente con pruebas la relacin entre las lecturas (lecturas por segundo , o max_reads) y las escrituras (max_writes) en un tpico maestro y tpico esclavo.