|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 6 ![]() |
bonjour,
je cherche à repliquer 2 bases MySQL sur 2 pc différents. J'ai configuré 1 pc en maitre, l'autre en esclave et ça fonctionne. Mon soucis est que les données repliquées dans le serveur esclave vont écrasées toutes les autres données présentes avant la répilcation. Y a t'il une solution pour éviter cela ? Merci de votre aide. |
|
|
00
|
|
|
#2 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Salut,
Effectivement je pense qu'il y a écrasement si tu fais un LOAD DATA FROM MASTER avant de lancer la réplication. Mais cette commande ne concerne que les tables et bases recensées dans la réplication (options replicate-do-db, replicate-ignore-db...). Tu peux donc garder des tables et bases intactes à côté de celles qui sont répliquées. Si tu souhaites garder des anciennes données dans les tables répliquées, tu peux toujours les sauvegarder et les réinsérer après (en faisant attention aux éventuels conflits avec les données répliquées).
__________________
Pensez au bouton
|
|
|
00
|
|
|
#3 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 6 ![]() |
t'as donc pas une option disponible pour ne pas perdre les données lorsque tu fais ton "load data from master" ?
|
|
|
00
|
|
|
#4 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Je ne pense pas. En tout cas je te conseille de sauvegarder tes bases avant de tenter quoi que ce soit
__________________
Pensez au bouton
|
|
|
00
|
|
|
#5 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 6 ![]() |
oui c'est clair, là je suis sur des bases tests.
Je suis assez deçu de la méthode de replication de mysql. Aurais tu par hasard d'autres idées ? |
|
|
00
|
|
|
#6 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Ben déjà c'est rare quand un slave contient autre chose que les données répliquées du master. La réplication sert surtout dans un contexte de haute disponibilité, pour avoir un failover si le master tombe en rade ou pour augmenter les performances (ex pour la bdd d'un forum : l'utilisation courante se fait sur le master, les recherches sur le slave).
Du coup peut-être qu'une autre technique serait plus adaptée à ton cas mais il faudrait plus de détails...
__________________
Pensez au bouton
|
|
|
00
|
|
|
#7 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 6 ![]() |
ok, voila ce que je cherche :
j'ai une BD MySQL su un pc portable, une autre sur un pc fixe. en gros j'ai besoin de mettre a jour regulièrement la BD du PC fixe tout en gardant les données sur l pc portable, en sachant que plusieurs portables se connecteront au fixe pour mettre à jour la base. |
|
|
00
|
|
|
#8 |
|
Provisoirement toléré
Inscription : juin 2003 Messages : 2 622 ![]() |
Malheureusement à ma connaissance ce n'est pas possible avec MySQL seul. En effet ça nécessite de stocker l'heure de dernière synchronisation avec la base centrale pour chaque portable (on ne va pas synchroniser toutes les données mais seules celles qui ont été modifiées sur le portable entre-temps) et les modifications concurrentes posent problème (que se passe-t-il si 2 portables modifient la même donnée de leur côté puis mettent à jour la base centrale ?)
Par contre il doit exister d'autres solutions : - Des outils de synchronisation comme celui-ci : http://www.sitepoint.com/article/mys...lyog-job-agent - Elaborer un système qui va détecter d'une manière ou d'une autre l'heure de dernière synchronisation avec la base centrale et piocher dans les logs de la base du portable uniquement les requêtes à partir de cette heure-là (oui, c'est tordu...) Ou bien activer le log binaire sur chaque portable, exécuter son contenu avec mysqlbinlog pour synchroniser la base puis tout de suite après supprimer les fichiers logs... - Si tu développes en .NET il me semble qu'ADO .NET permet de travailler en mode déconnecté. Les données sont stockées dans un dataset au format XML sur le poste local, puis synchronisées quand on se reconnecte au serveur de bases de données.
__________________
Pensez au bouton
|
|
|
00
|
|
|
#9 |
|
Invité de passage
![]() Inscription : août 2006 Messages : 6 ![]() |
Merci pour ton aide...
je vais étudier tout ça |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com