Comment synchroniser des tables mysql ? - SQL/NoSQL - Programmation
Marsh Posté le 10-02-2009 à 10:06:45
T'as pas une autre réponse à formulé ? Tu penses bien que j'ai cherché sur le moteur de recherche avant de poser la question...sur le forum !
Si tu regarde bien sur Google, tu verras des exemples, des procédures, y compris sur le site MySQL permettant de synchroniser des bases (Maitre, esclave, ect...)
C'est dans le cadre d'un projet professionelle, je ne fais pas ça pour m'amuser !
Marsh Posté le 10-02-2009 à 10:09:38
cvb a écrit : Si tu regarde bien sur Google, tu verras des exemples, des procédures, y compris sur le site MySQL permettant de synchroniser des bases (Maitre, esclave, ect...) |
Et ce n'est pas ce que tu veux faire ?
C'est bien pour ça que je me suis permis le Google...
Marsh Posté le 10-02-2009 à 10:18:11
macgawel a écrit : |
Non pas exactement ! Je veux savoir s'il est possible de synchroniser que certaines tables, juste une partie de la base
Au sujet de la synchronisation, comment cela fonctionne t-il exactement ? je m'explique Si les deux bases Maitre et esclave sont modifiés ce qu'est techniquement possible dans la solution que je suis entrain de mettre en place, comment va se comporter la synchronisation ?
Des données vont-elles être perdus à un moment dans la synchronisation ? ou une mise à jour des données va t-elle avoir lieu sur la base Maitre ?
Je suis entrain d'installé deux bases de donnée MYSQL en attendant, pour faire les tests ! Voir comment se comporte réélement la synchronisation !
D'avance merci
++
Marsh Posté le 10-02-2009 à 10:56:03
cvb a écrit : |
Ca serait quand même très con que ça soit impossible.
Requête classique de modification des droits d'un utilisateur :
Citation : GRANT <lesdroits> ON <unebase>.<unetable> TO user@'<adresse>' IDENTIFIED BY '<password>'; |
<unebase> et <unetable> peuvent être remplacé par "*" pour dire "toutes les bases" et "toutes les tables" et <adresse> peut être remplacé par "%" pour dire "de n'importe où".
Exemple de requette d'affection du droit de réplication à un utilisateur qu'on trouve dans la doc :
Citation : GRANT REPLICATION SLAVE ON *.* TO repl@'%' IDENTIFIED BY '<password>'; |
Je te laisse deviner la réponse.
cvb a écrit : Au sujet de la synchronisation, comment cela fonctionne t-il exactement ? |
pour cette question : voir doc. T'aurais voulut du "en gros", on aurait pu faire un résumé mais là on va pas réécrire la doc pour tes beaux yeux.
cvb a écrit : je m'explique Si les deux bases Maitre et esclave sont modifiés ce qu'est techniquement possible dans la solution que je suis entrain de mettre en place, comment va se comporter la synchronisation ? |
Si t'as mis en place une synchronisation circulaire rien ne sera perdu. Si c'est juste du maitre-esclave, alors le maitre se contrefiche des modifs effectué sur l'esclave ce qui est logique : c'est lui le maitre.
cvb a écrit : Je suis entrain d'installé deux bases de donnée MYSQL en attendant, pour faire les tests ! Voir comment se comporte réélement la synchronisation ! |
Bien alors lis la doc, teste et l'ensemble deviendra plus clair.
Marsh Posté le 10-02-2009 à 11:12:06
Merci beaucoup pour ces réponses
Je vais tester tout cela...
++
Marsh Posté le 11-02-2009 à 08:54:20
Re-Bonjour,
Je suis entrain de mettre la procédure en place. Dans l'entreprise ou je travaille, les sécurités sont telles que c'est compliqué de demander l'ouverture de port sur les parfeux des machines, équipés en Windows XP...
En attendant d'accéder à la demande et aux différentes autorisations, est-il possible de spécifier un autre port dans la synchronisation des données ? Je supose que le port par défaut utilisé est le 3306 comme spécifié dans le Mysql.ini ? Est-ce que la synchronisation utilise d'autres ports, afin que je fasse une demande précise au service réseau de la boite ?
D'avance merci pr les réponses
++
Marsh Posté le 11-02-2009 à 11:10:28
La connexion pour la réplication passe par le même port que les autres : c'est un utilisateur comme un autre mais avec un droit spécial.
Marsh Posté le 11-02-2009 à 11:11:41
omega2 a écrit : La connexion pour la réplication passe par le même port que les autres : c'est un utilisateur comme un autre mais avec un droit spécial. |
Oki donc y a que le port 3306 d'utilisé ?
Marsh Posté le 09-02-2009 à 22:25:46
Bonjour,
Je cherche un moyen de synchroniser 2 tables MySQL, le problème est que ces 2 tables sont identiques mais sur 2 serveurs différents et sur des bases différentes. C'est dans le cadre d'un projet.
Il faut que j'arrive à mettre à jour la table principale (maître) avec uniquement les derniers enregistrement de ma deuxième base (esclave) afin qu'elles restent identiques. Avez-vous des idées ? Est-ce que cette action est réalisable ?
D'avance merci pour les réponses
++