2017-03-24 3 views
0

J'ai besoin d'une "base de données de connexion générale", avec quelques colonnes (ID, Pass, User, IP). Les utilisateurs sont venus sur le site, entrez leurs données (ils peuvent changer le mot de passe \ nom d'utilisateur, et ils peuvent être modifiés ip), tous ces changements vont à "DB de connexion générale".Synchronisation d'une table de la base de données générale vers une autre base de données sur un autre serveur

Et j'ai 2 autres serveurs, avec la même base de données "Login Database 1" "Log.DB 2" et peut-être quelques autres (5 ou 10) ... ils ont exactement le même nom de colonne (id, pass, user, ip) et un peu plus de speciefic qui doit rester seulement sur (base de données log.db2, 3, 4, 5 etc) et ils n'existent pas sur General DB. Donc, mes questions est de savoir comment lier quelques database.table à une autre base de données.table, et de le garder "à jour" en ligne, ou comment faire des changements automatiques (Insérer \ Mise à jour \ Supprimer) dans les, après les changements (ins, upd, del) sont venus à la base de données de connexion générale. L'image montre seulement la direction que je veux, et n'est pas parfaite avec la structure. Je suis intéressé par 2 variantes, si cela fonctionne sur un serveur, et la deuxième variante, si cela fonctionne sur 2-3-4-5 serveurs.

MISE À JOUR: je l'ai trouvé quelques informations, à propos de « réplication » https://habrahabr.ru/post/56702/ (vous pouvez le traduire, ou Google « réplication MySQL » mais il ne plus sur 2 bases de données identiques, mais mon but est de faire que des colonnes quelques identiques dans une table ..

Pic.1

Répondre

0

Do peut arriver ceci avec la réplication standard de MySQL/MariaDB vous pouvez alors sélectionner des tables Wich/schemas sont répliquées aux esclaves Tout esclave connecté au maître

voir..: https://mariadb.com/kb/en/mariadb/standard-replication/

+0

Merci, vous écrivez ce commentaire en une fois avec moi (je mets à jour mon post) où ajouter des informations que j'ai trouvé quelques informations sur la réplication, mais comme je le demande, je dois "répliquer" une table (id, pass) mais d'autres colonnes sur une autre base de données (esclaves) peuvent uniquie (avoir un autre nom, quantité de colonnes, données dedans etc.) J'ai aussi trouvé que ce n'est pas une option pour "ignorer les colonnes" https://forums.mysql.com/read.php?26,621252,621452#msg-621452 – Amaroc

+0

Non, la structure doit être la même, mais je ne suis pas sûr si vous pouvez créer une vue sur le maître avec seulement les champs reproduire. Ou vous devez créer des TRIGGERs sur le Master pour INSERT/UPDATE/DELETE afin de stocker les Infos dans une seconde table. cette table vous pouvez alors répliquer –

+0

Sur Master, je n'ai que 2-3 colonnes, sur esclave de 15 à 18 colonnes (où seul l'id \ pass \ ip (par exemple) doit être identique à Master et avoir le même nom de colonnes. ne fonctionnait pas avant avec Triggers, mais comme je comprends ils font quelque chose sur l'événement, mais comment ici il peut aider (seulement s'il existe sur un serveur avec la même base de données)? – Amaroc