MySQL репликация - подчиненный сервер на одной базе данных - PullRequest
13 голосов
/ 22 декабря 2011

Я не смог найти ответ на свой вопрос.

У меня есть 2 сервера MySQL.

  1. Главный сервер
  2. подчиненный сервер

Теперь я хочу добавить еще один подчиненный сервер, но на этом сервере запущен другой веб-сайт.

Могу ли я реплицировать только одну базу данных?

Ответы [ 2 ]

40 голосов
/ 22 декабря 2011

Да, вы можете

Если вы хотите реплицировать только одну базу данных от мастера, вы можете установить replicate-do-db в вашем /etc/my.cnf или установить replicate-do-db в качестве аргумента mysql, например:

replicate-do-db=db01

Если у вас есть несколько баз данных для репликации, /etc/my.cnf должно выглядеть следующим образом:

replicate-do-db=db01
replicate-do-db=db02

Если вы просто хотите, чтобы slave игнорировал какую-либо базу данных, вы можете установить replicate-ignore-db:

replicate-ignore-db=db01

Подробнее о документе MySQL: http://dev.mysql.com/doc/refman/5.1/en/replication-options-slave.html#option_mysqld_replicate-do-db

2 голосов
/ 23 декабря 2015

Добавление этих строк в файл /etc/my.conf ведомого компьютера решило мою проблему.Спасибо.

replicate-do-db=Refill

Однако, обратите внимание, что после этого мне пришлось перезапустить обе базы данных и обновить новое имя файла и положение с главного сервера, введя следующую команду:

mysql> show master status;

Добавьте эту информацию в MySQL на ведомой машине и запустите ведомую.

...