mysql configuración maestro-esclavo de copia de seguridad

MySQL principio replicación maestro-esclavo
grabado en el mismo el mysql-bin.xxx binario (que se puede ver en el directorio de archivos de datos en el directorio mysql) son en cada funcionamiento del servidor de base de datos primaria, número de cuenta dedicado de I / O Server hilo iniciar sesión en el servidor principal para leer el archivo binario, el contenido del archivo se escriben en el archivo de registro de relé de registro local de retransmisión, y luego ejecuta sentencias SQL de las hebras del servidor SQL basado en el log retardado contenido.

principio

Preparación
servidor maestro tiene que tener el mismo estado inicial

El servidor principal a grilletes de base de datos de sincronización, evitar cambios de datos síncronos

MySQL> db usar;
MySQL> Tablas con el rubor Bloqueo de lectura;
servidor de base de datos de exportación de datos primaria (un ejemplo donde db)

MySQL> -pxxxx el mysqldump -uroot-DB> db.sql;
MySQL> -R & lt -ndt la -pxxxx> db.sql mysqldump -uroot-DB
la copia de seguridad, el servidor de base de datos maestra de desbloqueo

mysql> mesas de desbloqueo;
datos iniciales importados de la base de datos del servidor

MySQL> Crear base de datos DB;
MySQL> utilización DB;
MySQL> Fuente db.sql;
En este punto, el maestro de la base de datos consistente. Aquí configurado la sincronización maestro-esclavo.

El comando anterior es exportar todas las tablas y estructuras de datos, funciones, y si se desea exportarlo a utilizar procedimientos almacenados

servidor principal está configurado
para modificar la configuración de MySQL

vi /etc/my.cnf
añadido [mysqld] en la que:

# Base de datos Maestro número de identificación de cliente
server_id = 1
# activar el registro binario
de log-bin = mysql-bin
nombre de la base # desea copiar, si copias múltiples bases de datos, establezca esta opción para repetir
binlog-do-db = db
# desde el servidor actualización recibida desde el servidor primario atribuye a los propios archivos de registro binario del esclavo en el
esclavo-el registro de actualizaciones
# frecuencia de control de escritura binlog. ¿Cuántas transacciones por cada ejecución de una sola escritura (este parámetro y un gran rendimiento, pero puede reducir las pérdidas causadas por el colapso de MySQL)
sync_binlog = 1
# Este parámetro se utiliza generalmente en el principal sincronización principal para escalonados de valor añadido, para prevenir la violación clave
=. 1 auto_increment_offset
# este parámetro se utiliza generalmente en el principal sincronización primario, ya que el valor de desplazamiento se utiliza para prevenir la tecla violación
auto_increment_increment = 1
# cuando el número de días de registro binario elimina automáticamente, el valor por defecto es 0, lo que indica "no se eliminan de forma automática", y empezar puede ser retirado cuando el ciclo de registro binarios
expire_logs_days = 7
# cOPY función a esclavo
log_bin_trust_routine_creators = 1
MySQL reinicio, permite datos síncronos desde el servidor para crear una cuenta

# Crear una cuenta esclavo sync_account, contraseña contraseña de
MySQL> Grant replicación esclavo en . Para 'sync_account' @ 'slave_db_ip' identificado a través de 'contraseña';
# actualiza los privilegios de base de datos
mysql> privilegios ras;
ver el estado del servidor principal

Recuerde los siguientes valores de resultado: Archivo y Posición, cuando se utiliza la configuración de la biblioteca.

MySQL> Mostrar Master Estado \ G;
******************************************************** 1. Fila ****************
del archivo: MySQL-bin. # 000033 actual de registro de registro
de posición: 337523 posición de grabación # registro
Binlog_Do_DB:
Binlog_Ignore_DB:
después de este paso es no hacer funcionar la base de datos principal, el valor de estado se cambia para evitar

Configuración del servidor
para modificar la configuración MySQL

vi /etc/my.cnf
añadido [mysqld] en

= 2 la server_id
log = MySQL-bin bin-
log-Slave-Actualizaciones
sync_binlog = 0
#log Buffer una vez por segundo para escribir el archivo de registro, el archivo de registro y al ras operaciones (de disco cepillo) se realizan simultáneamente. En este modo, cuando se confirme la transacción, no tomará la iniciativa de escribir a disco se activa
innodb_flush_log_at_trx_commit = 0
# especificar qué biblioteca que desea copiar esclavo
duplicado hacer en DB-= db
#mysql copia maestra de vez en cuando entre maestro y esclavo interrupciones de la red, pero el caso de amo y esclavo indetectable (tal como un cortafuegos o un problema de encaminamiento). Después de que el esclavo esperará a que el número de segundos slave_net_timeout establecido para considerar la red falla, vuelva a conectar y ponerse al día antes de este tiempo la principal biblioteca de datos de
esclavo-NET-timeout = 60
log_bin_trust_routine_creators = 1
reinicio del servidor.

la ejecución de comandos sincrónica

# Para la realización de los comandos síncronos, el servidor principal IP, la sincronización de contraseña de la cuenta, la posición de sincronización
mysql> cambio de maestro a MASTER_HOST = '10 .10.20.111 'master_user =' sync_account 'master_password =' password 'MASTER_LOG_FILE =' mysql-bin.000033 ' , MASTER_LOG_POS = 337 523;
# giro de sincronización
mysql> comienzan esclavo;
Vista desde el estado del servidor

MySQL> Mostrar la condición de esclavo \ G;
*************************** 1. Fila ************ ***************
Slave_IO_State: Esperando Maestro al envío de eventos
MASTER_HOST: 10.10.20.111
MASTER_USER: la cuenta
MASTER_PORT: 3306
Connect_Retry: 60
MASTER_LOG_FILE: MySQL-bin.000033
Read_Master_Log_Pos: 337 523
RELAY_LOG_FILE: DB2 bin.000002 - relé
RELAY_LOG_POS: 337 686
Relay_Master_Log_File: MySQL-bin.000033
Slave_IO_Running: Sí
Slave_SQL_Running: Sí
Replicate_Do_DB:
Replicate_Ignore_DB:
Slave_IO_Running y el proceso Slave_SQL_Running deben funcionar correctamente, eso sí de estado, de lo contrario su sincronización falló. Si el fallo para ver los detalles de error específicos de registro de errores de MySQL para localizar el problema. Por último, puede ir a la base de datos en el servidor principal, cree una tabla o actualizar datos de la tabla de sincronización de prueba.

Supongo que te gusta

Origin www.cnblogs.com/MartyCode/p/12512253.html
Recomendado
Clasificación