Configuração do laboratório
Nó mestre - 192.168.43.13
Nó de escravo - 192.168.43.252
Etapa 1: instale o mariadb nos servidores mestre e escravo
Para começar, você precisa instalar o mariadb no mestre e no escravo. Então siga as etapas abaixo:
Primeiro, faça login no servidor mestre e atualize os pacotes do sistema como mostrado:
$ sudo dnf atualização
Depois de atualizar com êxito seu sistema, agora prossiga e instale o mariadb
$ sudo dnf install mariadb-server
Depois que a instalação for bem -sucedida, você pode verificar se o Mariadb está instalado executando o comando:
$ rpm -qa | Grep Mariadb
Para obter informações mais detalhadas, execute o comando:
$ rpm -qi mariadb -server
Agora comece o serviço Mariadb
$ sudo systemctl start mariadb
Além disso, você também pode permitir que o serviço inicie automaticamente em qualquer sessão de inicialização/reinicialização.
$ sudo systemctl Ativar mariadb
Para verificar se o mecanismo de banco de dados MariaDB está em funcionamento, emitir o comando:
$ sudo Systemctl status mariadb
Perfeito! Mariadb está em funcionamento como esperávamos.
Como é, o mariadb não está protegido e qualquer usuário pode fazer login no mecanismo de banco de dados e ter acesso a todos os bancos de dados e fazer alterações. Obviamente, não queremos que isso aconteça e garantir o banco de dados deve ser uma prioridade superior. Portanto, precisamos proteger o mecanismo de banco de dados definindo uma senha de root. Então, execute o comando abaixo:
$ sudo mysql_secure_installation
O que se segue é um prompt interativo que exigirá para definir a senha raiz do banco de dados e responder a algumas perguntas.
Por padrão, o mariadb é executado na porta 3306. Se você estiver executando um firewall, precisará permitir esta porta para que o mecanismo de banco de dados possa ser acessível a usuários e serviços externos.
Para abrir o porto no firewall, execute a seguinte regra do firewall:
$ sudo firewalld-cmd --add-port = 3306/tcp-zone = public --permanent
Para que a regra seja aplicada, recarregue o firewall:
$ sudo firewalld-cmd--reload
Com o MARIADB instalado e protegido com sucesso no servidor mestre, repita as mesmas etapas no servidor escravo.
Etapa 2: Configure o Mariadb no servidor mestre
Precisamos configurar o daemon mariadb para que nosso servidor mestre pretendido atue como um servidor na configuração. Então abra o arquivo de configuração /etc/meu.CNF
$ sudo vim /etc /meu.CNF
Anexe a configuração abaixo
[MySqld]Salvar e sair do arquivo de configuração. Para efetuar as mudanças, reinicie o serviço MariaDB.
$ sudo systemctl reinicie o mariadb-server
Etapa 3: Configure o servidor escravo
Assim como o servidor mestre, o escravo precisa ser configurado para agir como um. Então abra o arquivo de configuração como antes:
$ sudo vim /etc /meu.CNF
Anexe a configuração abaixo
[MySqld]Esteja ansioso para fornecer um diferente 'server_id'Do servidor mestre, que é 2 neste caso. E assim como o servidor mestre, o 'bind_address'O parâmetro deve apontar para o endereço IP do escravo.
Salvar e sair do arquivo.
Etapa 3: Crie um usuário de replicação no servidor mestre
Para configurar o escravo para replicação, precisamos voltar ao nó principal e criar um usuário de replicação. Faça login no mecanismo de banco de dados Mariadb.
$ mysql -u root -pPrimeiro, pare o usuário do escravo.
Mariadb [(nenhum)]> pare de escravo;O usuário Criar um usuário de replicação com os comandos mostrados:
Mariadb [(nenhum)]> Grant Replicação Slave On *.* Para 'réplica_user' @'192.168.43.252 '
Identificado por 'p@ssword123';
Consulta ok, 0 linhas afetadas (0.06 seg)
Mariadb [(nenhum)]> Privilégios de descarga;
Consulta ok, 0 linhas afetadas (0.04 seg)
Mariadb [(none)]> Limite as mesas com o bloqueio de leitura;
Consulta ok, 0 linhas afetadas (0.02 Sec)
Mariadb [(nenhum)]> saída;
Consulta ok, 0 linhas afetadas (0.02 Sec)
Depois disso, verifique se o status do mestre está em execução:
Mariadb [(nenhum)]> Mostrar status mestre \ gAnote cuidadosamente os valores do nome do arquivo e a posição. Estes serão usados posteriormente para configurar o escravo para replicação.
Da saída acima, isso se traduz em:
Arquivo: mysql-bin.000001
Posição: 1317
Saia do mecanismo MariaDB e crie uma cópia de backup do servidor mestre, como mostrado:
$ sudo mysqldump --l -databases -u root -p> masterDatabase.SQL
Faça login de volta ao mariadb e desbloqueie as tabelas:
Mariadb [(nenhum)]> Desbloquear tabelas;Lembre -se da cópia de backup que criamos para o banco de dados mestre? Estamos prontos para copiá -lo para o servidor escravo. Então execute o comando abaixo:
$ SCP MasterDatabase.raiz [email protected]:/raiz/
Etapa 4: configure o escravo para replicação
De volta ao nó escravo, importe o arquivo de backup que copiamos do mestre para o mecanismo MariaDB.
$ mysql -u root -p < masterdatabase.sqlE depois reinicie o serviço de mariadb
$ Systemctl reinicie o mariadb
Agora faça login no mecanismo de banco de dados Mariadb e configure o escravo da seguinte forma:
Mariadb [(nenhum)]> pare de escravo; Mariadb [(nenhum)]> Mude o mestre para master_host = '192.168.43.13 ', master_user =' réplica_user ',Lembre -se dos valores que dissemos que você deve se lembrar e possivelmente anotar -os ao exibir o status do servidor mestre? Estes finalmente foram definidos no Master_log_file e Master_log_pos atributos como visto.
Por fim, comece o escravo para inicializar o escravo para começar a replicar do mestre:
Mariadb [(nenhum)]> escravo de início;Em seguida, verifique o status do escravo
Mariadb [(nenhum)]> Mostrar status de escravo;Se a configuração foi feita perfeitamente, você não deve obter a saída abaixo de nenhum erro.
O escravo agora está pronto para replicação.
Etapa 5: Replicação do banco de dados de teste
Por fim, precisamos confirmar se nossa configuração está funcionando. Portanto, faça login na instância do mariadb no mestre e crie um banco de dados de teste como mostrado
Mariadb [(nenhum)]> Crie réplica de banco de dados;Em seguida, confirme a criação do banco de dados
Mariadb [(nenhum)]> mostrar bancos de dados;Volte para o nó escravo e verifique se o banco de dados existe.
Perfeito! Nossa configuração está funcionando! Todos os bancos de dados subsequentes criados no mestre serão replicados automaticamente e as mudanças sincronizadas no nó escravo. E isso nos leva ao final deste guia.