linux:replication_mysql
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédente | ||
linux:replication_mysql [11/07/2006 19:11] – oubli du mot "flush" (important) daniel | linux:replication_mysql [04/08/2009 23:39] (Version actuelle) – daniel | ||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
+ | ====== Mysql ====== | ||
+ | |||
+ | Plein d' | ||
+ | |||
+ | Un article intéressant sur la représentation intervallaire d' | ||
+ | |||
+ | ===== Réplication | ||
+ | |||
+ | Tout ce qui suit s' | ||
+ | |||
+ | ===== Init - Backup des bases ===== | ||
+ | |||
+ | Pour initialiser le systeme, ou si la synchro est perdue (slave en rade trop longtemps, le master n'a pas gardé de log binaire assez vieux au redémarrage du slave), il faut faire un backup des base du master. | ||
+ | |||
+ | - pour le backup des bases, on fait un backup à chaud avec un | ||
+ | <code sql> | ||
+ | sqlmaster> | ||
+ | </ | ||
+ | - puis | ||
+ | <code bash> | ||
+ | bash> cp -a /home/mysql / | ||
+ | </ | ||
+ | - on vide le log binaire avec | ||
+ | <code sql> | ||
+ | sqlmaster> | ||
+ | </ | ||
+ | |||
+ | 3) et on n' | ||
+ | <code sql> | ||
+ | sqlmaster> | ||
+ | </ | ||
+ | |||
+ | On peut regrouper tout ça en une seule commande (sql est un alias pour une connexion mysql aves les droits qui vont bien) | ||
+ | <code bash> | ||
+ | # pour une debian, l' | ||
+ | alias sql=' | ||
+ | sql -e "FLUSH TABLES WITH READ LOCK;" && cp -a /home/mysql / | ||
+ | </ | ||
+ | |||
+ | 4) Ensuite, il faut couper le slave (couper mysql, pas juste stop slave), copier le rep mysql avec toutes ses bases, effacer les fichers ib* dedans, virer les logs binaires du slave et on démarrer le slave. On vérifie dans le syslog si tout va bien... | ||
+ | |||
+ | ===== dump ===== | ||
+ | Pour un dump avec une ligne par enregistrement, | ||
+ | # Ajouter les options : --complete-insert --extended-insert=FALSE' |