Detectar, preparar e restaurar uma replicação Mysql inclinada

Fonte: Pt Ikoula wiki
Ir para navegação Ir para pesquisar
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

pt:Detectar, preparar e restaurar uma replicação Mysql inclinada he:לזהות, להכין ולשחזר העתק Mysql מוטה ro:Detectarea, pregăti şi restaura o înclinat replicarea Mysql ru:Обнаруживать, готовить и восстановить наклонена репликации Mysql pl:Wykrywanie, przygotować i przywrócić przechylony replikacji Mysql ja:検出し、準備し、傾斜の Mysql レプリケーションを復元 ar:كشف، وإعداد وإعادة تكرار الخلية مائلة zh:检测、 准备和还原倾斜的 Mysql 复制 de:Erkennen, vorzubereiten und eine schräge Mysql-Replikation wiederherstellen nl:Detecteren, het voorbereiden en het herstel van een gekantelde Mysql replicatie it:Rilevare, preparare e ripristinare una replica di Mysql inclinata es:Detectar, preparar y restaurar una replicación Mysql inclinada en:Detect, prepare and restore a tilted Mysql replication fr:Détecter, préparer et rétablir une réplication Mysql basculée

Este artigo foi traduzido por um sistema de tradução automática. Você pode visualizar a fonte do artigo aqui.

No Debian 8

Você implementou um sistema de replicação de banco de dados Mysql através de uma configuração mestre /escravo. Quando ocorre um problema no servidor mestre, este é o servidor escravo (escravo ) Quem assume. No entanto é de referir que esta escala ocorreu.

Deteção

  • Dependendo do seu nível de serviço, você pode ser um acompanhamento do funcionamento da replicação, é avisados pelo apoio em caso de alternância.
  • Em caso de alternância no master para o servidor do servidor slave, o ip do último será automaticamente alterado para responder em vez do servidor mestre
  • O volume do eslavo DB será mais importante e irá conter as últimas informações gravadas.
  • Pelo comando sobre o BDD :

Você conectar o BDD :

   MySQL  -u votre_utilisateur -p sua_senha 

Em seguida, verifique o status do servidor mestre :

   mostrar a sintaxe do status de mestre \G

Prepare-se

Antes de executar os comandos que se seguem, planejar a operação ! Prefiro um intervalo de tempo ou solicitação de bancos de dados é dele mínimos. Certifique-se de seu BDD não é modificada pelo também colocar o seu site em manutenção

Absolutamente não deve haver escrito sobre o tempo de resposta de BDD escravo !

> No caso de escrita durante o procedimento, aqui estão as consequências :

  • Replicar fora de sincronização
  • Dados podem ser perdidos ou corrompidos

Evitar escrever

Para evitar a escrita de um banco de dados, ele deve implementar a somente leitura (read-only). Que terá o efeito de bloquear solicitações para gravar o DB.

Em SLAVE

   TABELAS NIVELADAS COM BLOQUEIO DE LEITURA ; SET GLOBAL read_only = UM ;

Criar o despejo

Uma vez o escravo somente leitura, pode largar suas tabelas com segurança : Em SLAVE

   MySQL dump --Skip-adicionar-fechaduras  --Single-transação  -u votre_utilisateur -p sua_senha  --todos-bases de dados  --ignore-table =User  > /destination/de/depart/mon/backup.sql

Substituir obviamente /destination/de/mon/backup.sql por seu destino habitual de backup. Por convenção, a data no formato backupDDMMAAAA.sql lá para encontrar :)

Enviando o despejo

Na medida em que os servidores escravos e mestres são remotos, você passar o arquivo de despejo de escravo ao mestre. Existem várias maneiras de fazê-lo tem esta transferência de arquivo, mas aqui vamos discutir o uso de PCs que permite para fazer cópias usando o serviço SSH.

  • login 1 : login ssh da máquina escravo
  • login2 : login ssh da máquina mestre
  • Servidor 1 : IP ou Hostname máquina escravo
  • Servidor 2 : IP ou Hostname máquina mestre
  • Caminho /Arquivo 1 : /destination/de/depart/de/mon/backup.sql
  • Caminho /Arquivo 2 : /destination/darrivee/de/mon/backup.sql
   SCP Login  1@Servidor 1:Caminho /Arquivo 1 Login2@Servidor 2:Caminho /Arquivo 2

Importar o despejo

Em seguida, importar los no mestre de banco de dados a fim de sincronizar o 2 BDD. No MASTER

   mysql -u votre_utilisateur -p sua_senha < /destination/de/mon/backup.sql

Rétablir la réplication

Sur le serveur MASTER: Vous avez besoin d'informations provenant du serveur master, exécutez donc la commande:

   echo "show master status\G" | mysql -u votre_utilisateur -p votre_mot_de_passe

Garder ces deux lignes de côté :

  • File: mysql-bin.1X1X1X
  • Position: 2X2X2X2X2

Sur SLAVE Actualisez les clauses MASTER_LOG_FILE et MASTER_LOG_POS par les informations de la commande précédente.

  • MASTER_LOG_FILE étant File:
  • MASTER_LOG_POS étant Position
   stop slave; CHANGE MASTER TO MASTER_LOG_FILE='mysql-bin.1X1X1X', MASTER_LOG_POS=2X2X2X2X2;start slave;


Test et finalisation

Pour vérifier la mise en place de cette réplication utilisez sur le SLAVE:

   echo "show slave status\G" | mysql -u votre_utilisateur -p votre_mot_de_passe

Vérifiez ces lignes :

  • Slave_IO_Running sur Yes
  • Slave_SQL_Running sur Yes
  • Seconds_Behind_Master a 0

Si tout correspond la mise en place de la réplication s'est bien déroulée. Retirer la restriction lecture seule sur votre bdd SLAVE:

  SET GLOBAL read_only = OFF;UNLOCK TABLES;

Vous pouvez redémarrer tous vos services utilisant les Bdd.

Vérifiez leur bonne exécution grâce a la commande suivante en remplaçant "votreservice" par celui concerné. exemple: votre serveur web apache : "apache2" votre SGBD Mysql : "mysql"

  systemctl  status "votreservice".service

Cette documentation a été crée a partir de la documentation interne et de la documentation officielle Mysql



Não tem permissão para colocar comentários.