Prova di mysql mirroring su macchine virtuali Debian in VMWare |
In generale la sincronia dei dati anche se la macchina slave e' spenta od offline. Al momento di ristabilire la connessione lo slave e' in grado di stabilire le differenze tra le proprie tabelle e quelle del master per richiedere la differenza
In alcuni casi questa procedura puo' entrare in crisi ed e' necessario effettuare un resync manuale con la procedura indicata qui passando da un file dump dei dati del master
In pratica si procede stoppando lo slave
stop slave;
si blocca il master e si effettua il dump dei dati in modalita' lock
reset master;
flush tables with read lock;
si esce dalla shell di Mysql e si crea il dump dei dati
mysqldump -u root -p mirrdatabase > dump.sql
si rientra nella shell di Mysql e si sbloccano le tabelle
unlock tables;
a questo punto si copiano i dati sullo slave (che ha il mirroring bloccato)
mysql -u root -p mirrdatabase < dump.sql
(nello script dump.sql ci sono le informazioni per cancellare le tabelle precedentemente presenti per cui non e' necessario farlo a mano)
si riavvia il mirroring
reset slave;
change master to master_log_file='mysql-bin.000001', master_log_pos=1;start slave;
questa procedura puo' essere utile nel momento di creare un mirroring di una macchina gia' in produzione da diverso tempo con una grande quantita' di dati che potrebbero creare problemi in fase di sincronia sia alla CPU che al traffico di rete