MySQL replication, le slave accumule du retard

De Ikoula Wiki
Jump to navigation Jump to search
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.

Introduction

Dans le cas d'une réplication MySQL, il est possible que votre serveur esclave accumule du retard et n'arrive jamais à rattraper la position du serveur maître.
Cela peut être du aux journaux InnoDB qui par défaut, se vide après chaque transaction. Nous allons modifier ce paramètre afin de le forcer à se vider toutes les secondes à la place.
Il en résulte un avantage conséquent en termes de vitesse, mais cela peut aussi conduire à une perte des données lors d'un incident, il faudra donc refaire le serveur esclave en cas de crash.

Déroulé

Dans MySQL vérifier la valeur de innodb_flush_log_at_trx_commit :

mysql> show variables like 'innodb_flush_log_at_trx_commit';

Par défaut celle-ci est à 1, modifier la pour 0 :

mysql> SET GLOBAL innodb_flush_log_at_trx_commit  = 0;

Si vous souhaitez que cette modification soit reboot-proof, ajouter innodb_flush_log_at_trx_commit=0 dans votre fichier de configuration MySQL.


Conclusion

Petit résumé de ce qui vient d'être réalisé et pour aller plus loin



Cet article vous a semblé utile ?

0



Vous n'êtes pas autorisé à publier de commentaire.