Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1889 connectés 

  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL Replication Multi - maitre plus de 10 serveurs

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

MySQL Replication Multi - maitre plus de 10 serveurs

n°1701045
stormfire
Posté le 12-03-2008 à 13:56:11  profilanswer
 

Salut à tous !
je suis un "nouveau" sur le forum.
 
je cherche le moyen de repliquer un base sur plusieurs serveurs, en piochant sur le net j'ai trouvé un tutorial sur la replication Maitre à Maitre et aussi (et surtout) la replication sur plusieurs serveurs:
 
- il consistait à repliquer une base sur 3 serveurs monté en cerlce, ce qui fait que :
  ServeurA est Maitre du ServeurB qui est Maitre du ServeurC qui est Maitre du ServeurA
 
j'ai testé et ça fonctionne Hyper-bien jusqu' à ce que je me retrouve avec 11 serveurs:
 
"l'idée du tuto etait de faire (au niveau du fichier de configuration) :
 
auto_increment_increment =10
Serveur1 : auto_increment_offest=1
Serveur2 : auto_increment_offest=2
Serveur3 : auto_increment_offest=3
 
ainsi il ne devrait pas y avoir de conflit entre les identifiants provenant de chaque serveur
( les Id du serveur1 sera : 1, 11, 21, 31 etc... les Id du serveur2 sera : 2, 12, 22, 32 etc... les Id du serveur3 sera : 3, 13, 23, 33 etc...)
 
mais lorsqu'on tombe sur le 11eme serveur, ça donne :
Serveur1 : auto_increment_offest=11 et les ID seront donc : 11, 21, 31 etc... IDEM QUE CEUX DU SERVEUR1
 
est ce que quelqu'un a une solution à me proposer pour resoudre ce probleme  

mood
Publicité
Posté le 12-03-2008 à 13:56:11  profilanswer
 

n°1701087
omega2
Posté le 12-03-2008 à 14:38:03  profilanswer
 

La meilleure solution aurait été de se garder une marge de manœuvre pour éviter ce problème.
La solution la plus simple à mettre en oeuvre dans ce genre de cas, c'est de multiplier le auto_increment_increment par un entié (pour le mettre à 20 ou 30 ou ...) ainsi que les auto_increment_offest et les id (ne pas oublier les clés étrangères correspondantes si elles ne sont pas modifié automatiquement) déjà existant, le tout par le même multiplicateur.
Il est possible de faire la même chose sans modifier les id déjà existant mais il faudra au moins régler les indices d'autoincrémentation de chaque table sur chaque serveur pour éviter qu'il ne se produise une collision d'id malgré les changements d'auto_increment_offest (je ne sais pas si mysql modifie de lui même l'indice du prochain autoincrément quand on modifie le auto_increment_increment ou le auto_increment_offest).

n°1702138
stormfire
Posté le 14-03-2008 à 06:32:57  profilanswer
 

merci de m'avoir repondu !!
 
d'autre gars m'ont proposé de mettre auto_increment_increment sur 100 ... j'ai verifié et jusqu'ici pas de doublon  
 
exemple :
 
Id du Serveur1 : 101, 201, 301, 401 ...
Id du Serveur9 : 109, 209, 309, 409 ...
Id du Serveur10 : 110, 210, 310, 410 ...
Id du Serveur11 : 111, 211, 311, 411 ...
 
nouveau probleme : le type INTEGER risquerait de ne plus supporter les données au bout de quelque lignes d'enregistrement !!

n°1702188
omega2
Posté le 14-03-2008 à 09:59:16  profilanswer
 

Personnellement, pour les identifiants j'utilise quasiment toujours le type bigint. Le seul cas où j'utilise de simple integer c'est quand je suis sur et certain que la table n'aura que quelques enregistrements : par exemple pour le titre d'une personne (monsieur, madame, docteur, maitre ...)

n°2154029
forcapedro
Posté le 23-08-2012 à 16:41:26  profilanswer
 

SVP stormfire peux-tu vous m'envoyer le tuto que tu utilise pour faire circuler les maitre? car moi j'en ai besoin que pour 4 bases pas 11 loll
Merci par avance

n°2154030
forcapedro
Posté le 23-08-2012 à 16:41:52  profilanswer
 

SVP stormfire peux-tu vous m'envoyer le tuto que tu utilise pour faire circuler les maitre? car moi j'en ai besoin que pour 4 bases pas 11 loll
Merci par avance


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  SQL/NoSQL

  MySQL Replication Multi - maitre plus de 10 serveurs

 

Sujets relatifs
[MySQL] Error : 2013 C'est quoi ça ? [Resolu]PHP/MySQL : Comment récupérer le dernier id attribué par MySQL ?
Gerer dates avec mysqlMysql : création base pour héberger mots de passe
Formulaire et affichage de donnée venant de la base (php/mysql)SQL ERROR [mysql]
PHP4 inclut elle les fonctions Mysql (mysql_connect...) ?as400 mysql php
modifier une table mysql a l'aide d'un tableau sur une formulaire[PHP/MYSQL]Planning
Plus de sujets relatifs à : MySQL Replication Multi - maitre plus de 10 serveurs


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR