Différences entre versions de « MySQL replication, le slave accumule du retard »
(Page créée avec « <span data-link_translate="he"></span><span data-link_translate="ro"></span><span data-link_translate="ru"></span><span data-link_translate="pl"></span><span data-link_tra... ») |
(Aucune différence)
|
Version actuelle datée du 16 novembre 2020 à 13:31
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 ?
Activer l'actualisation automatique des commentaires