Como configurar a replicação MySQL em Rhel, Rocky e Almalinux

- 3662
- 1021
- Enrique Crist
A replicação de dados é o processo de copiar seus dados em vários servidores para melhorar a disponibilidade de dados e aprimorar a confiabilidade e o desempenho de um aplicativo. Em Mysql Replicação, os dados são copiados de um banco de dados do servidor mestre para outros nós em tempo real para garantir a consistência dos dados e também para fornecer backup e redundância.
Neste guia, demonstramos como você pode configurar Mysql (Senhor de escravos) replicação em distribuições baseadas em RHEL, como CENTOS, Fedora, Rocky Linux, e Almalinux.
Configuração de replicação do MySQL
Então, aqui está o nosso Mysql Configuração do laboratório de replicação.
MySQL Master - 10.128.0.14 MySQL Slave - 10.128.15.211
Vamos começar…
Etapa 1: Instale o MySQL no servidor mestre e escravo
Vamos começar instalando o Mysql banco de dados em ambos mestre e escravo servidores.
$ sudo dnf install @mysql

Depois que a instalação estiver concluída, faça um ponto para iniciar o servidor de banco de dados.
$ sudo systemctl start mysqld
Em seguida, permita começar a iniciar o sistema ou após a reinicialização.
$ sudo SystemCtl Ativar MySqld
Depois disso, confirme que o Mysql O servidor de banco de dados está em execução como mostrado:
$ sudo systemctl status mysqld

Etapa 2: seguro MySQL no servidor mestre e escravo
O próximo passo é garantir o Mysql banco de dados em ambos mestre e escravo servidores. Isso ocorre porque as configurações padrão são inseguras e apresentam algumas brechas que podem ser facilmente exploradas por hackers.
Então, para endurecer o MySQL, execute o comando:
$ sudo mysql_secure_installation
Primeiro, você será obrigado a definir o Mysql senha raiz. Certifique -se de fornecer uma senha raiz forte, de preferência com mais de 8 caracteres, que são uma mistura de caracteres maiúsculos, minúsculos, pequenos, especiais e numéricos.

Para os pedidos restantes, digite 'Y'
Para ajustar o servidor de banco de dados para as configurações recomendadas.

Depois de terminar de instalar e endurecer Mysql No nó mestre e escravo, o próximo é configurar o nó mestre.
Etapa 3: Configure o nó principal (servidor)
O próximo passo é configurar o Mestre nó e conceda o escravo Nó acesso a ele. Primeiro, precisamos editar o MySQL-Server.CNF arquivo de configuração.
$ sudo vim /etc /meu.CNF.d/mysql-server.CNF
Adicione as seguintes linhas sob o [MySqld]
seção.
Address de ligação = 10.128.0.14 servidor-id = 1 log_bin = mysql-bin
Uma vez feito, salve as mudanças e saia. Em seguida, reinicie o Mysql servidor.
$ sudo sysemctl reinicie o mysqld
Em seguida, faça login em Mysql concha.
$ sudo mysql -u root -p
Execute os seguintes comandos para criar um usuário de banco de dados que será usado para vincular o mestre e o escravo para replicação.
mysql> criar 'réplica'@'10.128.15.211 'identificado por' [email protegido] '; MySQL> Grant Replicação Slave On *.*Para 'réplica'@'10.128.15.211 ';

Aplique as alterações e saia do Mysql servidor.
mysql> privilégios de descarga; mysql> saída;
Verifique o status do mestre.
mysql> show mestre status \ g

Tome nota do nome do arquivo e posição. Você precisará disso mais tarde ao configurar o escravo para replicação. No nosso caso, temos o nome do arquivo como mysql-bin.000001
e posição 1232.
Etapa 4: configure o nó escravo (servidor)
Agora, volte para o nó escravo. Mais uma vez, edite o MySQL-Server.CNF arquivo de configuração.
$ sudo vim /etc /meu.CNF.d/mysql-server.CNF
Como antes, cole essas linhas sob o [MySqld]
seção. Altere o endereço IP para corresponder ao IP do escravo. Além disso, atribua um diferente ID do servidor. Aqui nós atribuímos o valor de 2.
Address de ligação = 10.128.15.211 ID do servidor = 2 log_bin = mysql-bin
Salve as alterações e saia do arquivo. Em seguida, reinicie o servidor de banco de dados.
$ sudo systemctl reiniciar mysqld
Para configurar o Escravo Nó para replicar do nó principal, faça login no servidor MySQL do escravo.
$ sudo mysql -u root -p
Em primeiro lugar, pare os threads de replicação:
MySQL> Pare de escravo;

Em seguida, execute o seguinte comando para configurar o nó escravo para replicar bancos de dados do mestre.
mysql> Alterar mestre para master_host = "10.128.0.14 ", master_user =" réplica ", master_password = '[email protegido]', master_log_file =" mysql-bin.000001 ", master_log_pos = 1232;
Observe que o Master_log_file e Master_log_pos sinalizadores correspondem ao arquivo e Posição valores do Mestre nó no final da etapa 1.
O Master_host, Master_user, e SENHA MESTRA corresponde ao endereço IP principal, ao usuário da replicação e à senha do usuário de replicação, respectivamente.

Em seguida, inicie os threads de replicação de escravos:
MySQL> Start Slave;

Etapa 4: Testando a replicação do MySQL Master-Slave
Agora, para testar se a replicação entre o nó mestre e escravo estiver funcionando, faça login no servidor de banco de dados MySQL no nó principal:
$ sudo mysql -u root -p
Crie um banco de dados de teste. Aqui, nosso banco de dados de teste é chamado replicação_db.
mysql> criar replicação de banco de dados_db;
Verifique a existência do banco de dados.
MySQL> Mostrar bancos de dados;

Agora, vá para o nó escravo, faça login no servidor MySQL e confirme que o replicação_db Banco de dados está presente. A partir da saída abaixo, podemos ver que o banco de dados está presente. Esta é a confirmação de que a replicação ocorreu do mestre ao nó escravo.
MySQL> Mostrar bancos de dados;

E é isso, demonstramos com sucesso como você pode configurar um Mysql Modelo de replicação de escravos mestre que pode replicar bancos de dados do nó principal ao nó do escravo.
- « 11 Exemplos de tarefas de agendamento cron no Linux
- Como instalar, criar e gerenciar o LXC (contêineres Linux) no Ubuntu/Debian »