Рекомендации по репликации MySQL

Я настраиваю репликацию MySQL через binlog. Это установка ведущий/ведомый.

У меня есть несколько вопросов о том, как это сделать наилучшим образом.

  1. Следует ли тиражировать information_schema, если да/нет, то почему?
  2. Следует ли реплицировать базу данных mysql, если да/нет, то почему?
  3. Если все это должно быть реплицировано, не нужно устанавливать binlog-do-db?

Ваше здоровье.


person grandnasty    schedule 07.07.2010    source источник


Ответы (2)


  1. Нет, информационная схема НИКОГДА не должна быть реплицирована. Это метаданные о ваших таблицах, базах данных, подпрограммах, триггерах и т. д. Позвольте серверу заполнить свою собственную информационную схему.
  2. mysql db отлично подходит для репликации, особенно в случае, когда вы будете настраивать несколько пользователей. Если ваш главный сервер выйдет из строя, вам потребуется та же информация о пользователе, которая доступна на подчиненном сервере, чтобы переключиться на него. Если это произойдет, вам необходимо иметь такие же привилегии.
  3. Укажите только базу данных, которую вы хотите реплицировать с помощью binlog-do-db. Если вы ничего не укажете, все будет реплицировано по умолчанию.
person desertwebdesigns    schedule 07.07.2010
comment
Значит, binlog-do-db должно быть определено? У меня есть много баз данных для репликации, и я не хочу их перечислять. - person conandor; 27.12.2011
comment
Изменения в INFORMATION_SCHEMA не записываются в двоичные журналы. Это не настоящая база данных, это просто удобная табличная оболочка для внутренних метаданных, поэтому в ней не выполняются операции INSERT/UPDATE/DELETE. Нет абсолютно никакой причины включать binlog-ignore-db или relay-ignore-db для INFORMATION_SCHEMA и много причин не иметь фильтры репликации, особенно ненужные. - person Aaron Brown; 23.01.2012
comment
Если вы на самом деле используете binlog-do-db, помните, что запросы между базами данных работать не будут. Я предпочитаю не использовать binlog-do-db, если мне это не нужно на серверах, которые совместно используют только одну производственную базу данных. Объяснение см. в документации: dev.mysql.com/doc/refman/5.5/ru/ - person warden; 23.08.2012

  1. Нет необходимости копировать информационную схему. Подробнее см. здесь https://dev.mysql.com/doc/refman/5.0/en/information-schema.html
  2. Да, вы можете, потому что база данных mysql содержит все учетные данные пользователей, поэтому, чтобы иметь резервную копию пользователей, вы можете ее реплицировать.
  3. Да, используйте binlog-do-db для репликации выбранных баз данных, иначе все будет реплицировано, если ничего не указано.
person Shoaib    schedule 09.03.2016