MySQL Master Master Replication Setup on Centos 7
Índice:
- Pré-requisitos
- Instale o MySQL
- Configure o servidor mestre
- Configurar o servidor escravo
- Teste a configuração
- Conclusão
A replicação do MySQL é um processo que permite copiar automaticamente dados de um servidor de banco de dados para um ou mais servidores.
O MySQL suporta várias topologias de replicação, sendo a topologia Master / Slave uma das topologias mais conhecidas nas quais um servidor de banco de dados atua como mestre, enquanto um ou mais servidores atuam como escravos. Por padrão, a replicação é assíncrona, onde o mestre envia eventos que descrevem as modificações do banco de dados em seu log binário e os escravos solicitam os eventos quando estão prontos.
Neste tutorial, explicaremos como configurar uma replicação Master / Slave do MySQL com um servidor mestre e um servidor escravo no CentOS 7. Os mesmos passos se aplicam ao MariaDB.
Esse tipo de topologia de replicação é mais adequado para a implantação de réplicas de leitura para escala de leitura, backup de bancos de dados em tempo real para recuperação de desastre e trabalhos de análise.
Pré-requisitos
Neste exemplo, estamos assumindo que você tem dois servidores executando o CentOS 7, que podem se comunicar entre si por uma rede privada. Se o seu provedor de hospedagem não fornecer endereços IP privados, você poderá usar os endereços IP públicos e configurar o firewall para permitir o tráfego na porta 3306 apenas de fontes confiáveis.
Os servidores neste exemplo têm os seguintes IPs:
Master IP: 192.168.121.59 Slave IP: 192.168.121.14
Instale o MySQL
O padrão Os repositórios do CentOS 7 não incluem pacotes MySQL, portanto, instalaremos o MySQL a partir do repositório oficial Yum. Para evitar problemas, instalaremos a mesma versão 5.7 do MySQL nos dois servidores.
Instale o MySQL nos servidores Master e Slave:
sudo yum localinstall
sudo yum install mysql-community-server
Quando a instalação estiver concluída, inicie o serviço MySQL e ative-o automaticamente na inicialização com:
sudo systemctl enable mysqld
sudo systemctl start mysqld
Quando o servidor MySQL inicia pela primeira vez, uma senha temporária é gerada para o usuário root do MySQL. Para encontrar a senha, use o seguinte comando grep:
sudo grep 'temporary password' /var/log/mysqld.log
Execute o comando
mysql_secure_installation
para definir sua nova senha root e melhorar a segurança da instância do MySQL:
mysql_secure_installation
Digite a senha raiz temporária e responda
Y
(sim) a todas as perguntas.
Configure o servidor mestre
Primeiro, configuraremos o servidor MySQL principal e faremos as seguintes alterações:
- Configure o servidor MySQL para escutar no IP privado. Defina um ID de servidor exclusivo. Habilite o log binário.
Para fazer isso, abra o arquivo de configuração do MySQL e adicione as seguintes linhas no
seção:
sudo nano /etc/my.cnf
master: /etc/my.cnf
bind-address = 192.168.121.59 server-id = 1 log_bin = mysql-bin
Uma vez feito, reinicie o serviço MySQL para que as alterações entrem em vigor
sudo systemctl restart mysqld
A próxima etapa é criar um novo usuário de replicação. Efetue login no servidor MySQL como usuário root:
mysql -uroot -p
De dentro do prompt do MySQL, execute as seguintes consultas SQL que criarão o usuário de
replica
e concederão o privilégio
REPLICATION SLAVE
ao usuário:
CREATE USER 'replica'@'192.168.121.14' IDENTIFIED BY 'strong_password';
GRANT REPLICATION SLAVE ON *.* TO 'replica'@'192.168.121.14';
Certifique-se de alterar o IP com o seu endereço IP escravo. Você pode nomear o usuário como desejar.
Ainda dentro do prompt do MySQL, execute o seguinte comando que imprimirá o nome do arquivo binário e a posição.
SHOW MASTER STATUS\G
*************************** 1. row *************************** File: mysql-bin.000001 Position: 1427 Binlog_Do_DB: Binlog_Ignore_DB: Executed_Gtid_Set: 1 row in set (0.00 sec)
Anote o nome do arquivo 'mysql-bin.000001' e a posição '1427'. Você precisará desses valores ao configurar o servidor escravo. Esses valores provavelmente serão diferentes no seu servidor.
Configurar o servidor escravo
Como no servidor mestre acima, faremos as seguintes alterações no servidor escravo:
- Defina o servidor MySQL para escutar no IPS privado; defina um ID de servidor exclusivo
Abra o arquivo de configuração do MySQL e edite as seguintes linhas:
sudo nano /etc/my.cnf
escravo: /etc/my.cnf
bind-address = 192.168.121.14 server-id = 2 log_bin = mysql-bin
Reinicie o serviço MySQL:
sudo systemctl restart mysqld
A próxima etapa é configurar os parâmetros que o servidor escravo usará para se conectar ao servidor mestre. Entre no shell do MySQL:
mysql -uroot -p
Primeiro, pare os encadeamentos escravos:
STOP SLAVE;
Execute a seguinte consulta que configurará o escravo para replicar o mestre:
CHANGE MASTER TO
MASTER_HOST='192.168.121.59',
MASTER_USER='replica',
MASTER_PASSWORD='strong_password',
MASTER_LOG_FILE='mysql-bin.000001',
MASTER_LOG_POS=1427;
Verifique se você está usando o endereço IP, nome de usuário e senha corretos. O nome e a posição do arquivo de log devem ser os mesmos que você obteve no servidor principal.
Depois de concluído, inicie os encadeamentos escravos.
Teste a configuração
Neste ponto, você deve ter uma configuração de replicação mestre / escravo funcionando.
Para verificar se tudo funciona como esperado, criaremos um novo banco de dados no servidor mestre:
mysql -uroot -p
CREATE DATABASE replicatest;
Entre no shell MySQL escravo:
mysql -uroot -p
Execute o seguinte comando para listar todos os bancos de dados:
SHOW DATABASES;
Você observará que o banco de dados que você criou no servidor mestre é replicado no escravo:
+--------------------+ | Database | +--------------------+ | information_schema | | mysql | | performance_schema | | replicatest | | sys | +--------------------+ 5 rows in set (0.00 sec)
Conclusão
Neste tutorial, mostramos que você cria uma replicação MySQL Master / Slave no CentOS 7.
Sinta-se livre para deixar um comentário se tiver alguma dúvida.
centos mysql mariadbUse o aplicativo Configurar os PCs da escola para configurar PCs com Windows em Escolas Baixe o aplicativo Configurar computadores da escola na Windows Store e use-o para configurar rapidamente seus computadores Windows 10 para melhores opções de aprendizado para os alunos
Os computadores agora se tornaram parte integrante da educação nas escolas, e quase todas as boas escolas têm os sistemas de computador definidos para seus alunos. O único problema com a educação em informática na escola ocorre quando os alunos se distraem com vários aplicativos e recursos dos PCs.
Como configurar o mysql (mariadb) master
Neste guia, mostraremos como configurar a replicação MariaDB Master / Slave com um servidor mestre e um servidor escravo no Debian 10. O MariaDB é a implementação padrão do MySQL no Debian.
Como configurar o mysql master
A replicação do MySQL é um processo que permite que os dados de um servidor de banco de dados sejam copiados automaticamente para um ou mais servidores. Este tutorial aborda um exemplo básico de replicação Master / Slave do MySQL com um servidor mestre e um servidor escravo no Ubuntu 18.04.







