mysql master-slave build-versión simple

Actualmente tengo una instancia de mysql 3306

[root @ lzl ~] # service mysqld status
MySQL en ejecución (1782) [OK]

[root @ lzl ~] # ps -ef | grep mysql
root 1603 1 0 Jul22? 00:00:00 / bin / sh / usr / local / mysql / bin / mysqld_safe --datadir = / data / mysql --pid-file = / data / mysql / lzl.pid
mysql 1782 1603 0 Jul22? 00:00:46 / usr / local / mysql / bin / mysqld --basedir = / usr / local / mysql --datadir = / data / mysql --plugin-dir = / usr / local / mysql / lib / plugin - -user = mysql --log-error = / data / mysql / mysql.log --pid-file = / data / mysql / lzl.pid --socket = / tmp / mysql.sock --port = 3306

Quiero configurar un mysql maestro-esclavo, necesito instalar la base de datos de respaldo, configuración de parámetros, inicialización de los datos de la base de datos de respaldo, iniciar la sincronización maestro-esclavo

 

1. Instale la base de datos en espera

1.1 Colocación cnf

Configuración cnf: copie directamente algunas configuraciones de la configuración maestra


主 : /etc/my.cnf
[mysqld]
datadir = / data / mysql
socket = /tmp/mysql.sock
character_set_server = utf8
default-time-zone = '+08: 00'
port = 3306

log-bin = master-bin
log-bin-index = master-bin.index
id-servidor = 01

[mysqld_safe]
log-error = / data / mysql / mysql.log
pid-file = / data / mysql / mysqld.pid

备 : /etc/my3308.cnf
[mysqld]
basedir = / usr / local / mysql
datadir = / data / mysql3308
socket = / tmp / mysql3308sock
character_set_server = utf8
default-time-zone = '+08: 00'
puerto = 3308
usuario = mysql

id-servidor = 02
índice
-registro-relé = bin -relé-esclavo.index registro-relé = bin-relé-esclavo

[mysqld_safe]
log-error = / data / mysql3308 / mysql.log
pid-file = / data / mysql3308 / mysqld.pid
basedir = / usr / local / mysql
user = mysql

 

1.2 Crear un directorio en la configuración cnf de la base de datos en espera

mkdir / data / mysql3308
chown mysql: mysql / data / mysql3308


1.3 Inicialización

/ usr / local / mysql / bin / mysqld --defaults-file = / etc / my3308.cnf --initialize 


1.4 Iniciar la base de datos en espera

mysqld_safe --defaults-file = / etc / my3308.cnf &

 

2 configuración de parámetros activos y en espera

2.1 Configurar parámetros maestros


[mysqld]
log-bin = master-bin
log-bin-index = master-bin.index
server-id = 1001

Reinicie 3306 mysqld

 

2.2 Configurar los parámetros del esclavo


[mysqld]
relé-log = esclavo-relé-bin
relé-log-index = esclavo-relé-bin.index
servidor-id = 1002

Reinicie 3308 mysqld

(Puede usar mostrar variables como '% bin%' y mostrar variables como '% servidor%' para verificar si los parámetros maestro-esclavo son efectivos)

 

2.3 maestro crear usuario


crear replicador de usuario @ '%' identificado por 'oráculo';
conceder selección, replicación esclava, super, recarga, replicación cliente en *. * al replicador;
privilegios de descarga;

 

3 Inicialización de datos

3.1 bloquear tablas


Inicie sesión en las tablas de bloqueo de la biblioteca maestra, prohíba los cambios de datos durante la fase de exportación, para garantizar la coherencia de los datos
mysql> flush tables with read lock; - El bloqueo se liberará cuando se desconecte la ventana

3.2 Registrar la posición de inicio de la copia

Registre el archivo binlog y la ubicación del maestro

mostrar estado maestro \ G
*************************** 1. fila ************** ************
             Archivo: master-bin.000002
         Posición: 154
     Binlog_Do_DB: 
 Binlog_Ignore_DB: Executed_Gtid_Set 

1 fila en el conjunto (0.00 seg)

 

3.3 Exportación lógica

mysqldump -A -h127.0.0.1 -P3306 -uroot -poracle> /tmp/source.sql

 

3.4 Desbloquear mesa


desbloquear tablas; - Una vez completada la exportación, no es necesario bloquear la tabla

 

4 construcción esclava

4.1 Importar datos de inicialización de la base de datos en espera


mysql -h127.0.0.1 -P3308 -uroot -poracle </tmp/source.sql

 

4.2 cambiar maestro

cambiar master a
master_host = '127.0.0.1',
master_port = 3306,
master_user = 'replicator',
master_password = 'oracle',
master_log_file = 'master-bin.000002',
master_log_pos = 154;

4.3 Iniciar esclavo

iniciar esclavo; 

 

5 Verifique la sincronización

Inicio de sesión en base de datos en espera

mysql> mostrar estado de esclavo \ G
************************** 1. fila ************* **************
               Slave_IO_State: Esperando que el maestro envíe el evento
                  Master_Host: 127.0.0.1
                  Master_User: replicador
                  Master_Port: 3306
                Connect_Retry: 60
              Master_Log_File: master-bin.000002
          Read_Master_Log_Pos: 154
               Relay_Log_File: esclavo- relay-bin.000002
                Relay_Log_Pos: 321
        Relay_Master_Log_File: master-bin.000002
             Slave_IO_Running: Sí
            Slave_SQL_Running: Sí

Supongo que te gusta

Origin blog.csdn.net/qq_40687433/article/details/107822180
Recomendado
Clasificación