SMsoft – informatica e dintorni

MySQL replica master-master: rimettere in sincro i due DB

La replica master-master di MySQL è un sistema ormai collaudato e funziona abbastanza bene. Ci possono eprò essere eventi *catastrofici* che invalidano uno dei due DB e sorge la necessità di rimettere in piedi la replica a partire dai dati presenti in uno dei DB.

Vediamo come procedere con una decina di step. Chiamiamo GS il server il server con i dati corretti e BS il server con i dati “rovinati”. Ipotizziamo che il DB da rimettere in replica si chiami CMS.

  1. Innanzitutto assicuriamoci che BS non stia ricevendo ancora query di INSERT/UPDATE/DELETE, ETC.
  2. BS: dalla console mysql, digitarein modo da fermare la replica;
  3. GS: eseguiamo tre passi dalla console mysql:
    1. digitiamoper fermare la replica anche su GS;
    2. digitiamoper bloccare gli aggiornamenti sul DB;
    3. digitiamoe prendere nota dei valori dei campi File (es mysql-bin.xxxxxx) e Position (es yyyyyy);
  4. GS: senza chiudere la console mysql, aprire una nuova shell e fare un dump del DB:
  5. GS: dalla console mysql, sblocchiamo il DB digitando
  6. BS: importiamo il file di dump:
  7. BS: dalla console mysql risincronizziamo la replica digitando(dove xxxxxx e yy devono essere i valori recuperati al punto 3.C;
  8. BS: dalla console mysql riavviamo la replica digitandoe verifichiamo che funzioni con un
  9. BS: recuperiamo i dettagli anche del master su questo nodo cone prendiamo nota dei campi File (es mysql-bin.zzzzzz) e Position (es wwwwww);
  10. GS: risincronizziamo la replica anche sul primo nodo, digitando dalla console mysql
  11. GS: riavviamo la replica anche sul primo nodo, digitando dalla console mysql

enjoy!




Se hai trovato utili le informazioni su questo blog,
Fai una donazione!
Clicca sul bottone qui sotto o almeno clicca sul banner pubblicitario :-)
*
Taggato su:

Commenti

Page optimized by WP Minify WordPress Plugin