2010-07-07 8 views
5

Je configure la réplication MySQL via binlog. C'est une configuration maître/esclave.Meilleures pratiques de réplication MySQL

J'ai quelques questions sur la façon de le faire de la meilleure façon.

  1. Si le schéma d'information est répliqué, si oui/non, pourquoi?
  2. Devrait-on répliquer mysql db? Si oui/non, pourquoi?
  3. Si tout doit être répliqué, aucun binlog-do-db n'a besoin d'être défini?

Cheers.

Répondre

13
  1. Non, le schéma d'informations ne doit jamais être répliqué. Ce sont des méta-données sur vos tables, dbs, routines, triggers, etc. Laissez le serveur remplir son propre schéma d'information.
  2. mysql db est très bien à répliquer, en particulier dans l'instance où vous allez configurer un certain nombre d'utilisateurs. Si votre maître échoue, vous aurez besoin des mêmes informations utilisateur disponibles sur votre serveur esclave pour pouvoir basculer vers celui-ci. Si cela se produit, vous devez disposer des mêmes privilèges.
  3. Liste uniquement la base de données que vous voulez répliquer avec binlog-do-db. Si vous n'en faites aucune, tout sera répliqué par défaut.
+0

Alors, binlog-do-db doit-il être défini? J'ai beaucoup de bases de données à répliquer et je ne souhaite pas les lister – conandor

+6

Les modifications apportées à INFORMATION_SCHEMA ne sont pas écrites dans les journaux binaires. Ce n'est pas une "vraie" base de données, c'est juste une encapsulation tabulaire pratique autour des métadonnées internes, donc il n'y a pas d'opérations INSERT/UPDATE/DELETE qui se produisent sur elle. Il n'y a absolument aucune raison d'inclure un binlog-ignore-db ou un relay-ignore-db pour INFORMATION_SCHEMA et beaucoup de raisons * pas * d'avoir des filtres de réplication, en particulier ceux qui sont inutiles. –

+0

Si vous utilisez réellement binlog-do-db, n'oubliez pas que les requêtes inter-base de données ne fonctionneront pas. Je préfère ne pas utiliser binlog-do-db si je n'ai pas à le faire sur les serveurs qui ne partagent qu'une base de données de production. Consultez les documents pour obtenir des explications: http://dev.mysql.com/doc/refman/5.5/fr/replication-options-binary-log.html#option_mysqld_binlog-do-db – warden

0
  1. No. besoin de reproduire le schéma d'information lu ce détail https://dev.mysql.com/doc/refman/5.0/en/information-schema.html
  2. Oui vous pouvez parce que la base de données MySQL contient toutes les informations d'identification utilisateur ainsi afin d'avoir une sauvegarde d'utilisateurs que vous pouvez reproduire.
  3. Oui, utilisez binlog-do-db pour répliquer les bases de données sélectionnées sinon tout sera répliqué si rien n'est mentionné.