настроить репликацию с несколькими источниками с помощью mysql

Я пытаюсь настроить репликацию с несколькими источниками и читаю этот учебник: репликация из нескольких источников

Я думаю, что нашел именно то, что мы ищем! Но у меня есть несколько вопросов, так как я впервые пытаюсь настроить репликацию MySQL.

У нас будет 2 (или более, будут добавлены в будущем один за другим) серверов (мастеров), которые будут установлены на внешний IP (разные офисы клиентов) и 1 «основной сервер» (подчиненный), установленный на «веб-сервере». (пока не знаю где).

  1. Можно ли добавить «мастер» после того, как все настроено для других мастеров (и подчиненных) без перезапуска каждого сервера? В будущем, вероятно, будет добавлено несколько мастеров.

  2. Если мы используем автоинкремент и это поле не является моим первичным ключом, нужно ли мне настраивать часть «auto_increment_increment»? Это связано с тем, что количество мастеров со временем будет меняться.

  3. Обязательно ли нам использовать InnoDB для таблиц, чтобы иметь возможность реплицировать их в репликации с несколькими источниками? Или можно использовать MyISAM?

  4. Можно ли реплицировать только несколько таблиц, то есть игнорировать некоторые таблицы? Должны ли мы использовать это: REPLICATE_IGNORE_TABLE?


person sincos    schedule 12.10.2016    source источник


Ответы (1)


  1. Да, вы можете использовать приведенный ниже запрос на ведомом устройстве, чтобы добавить новое ведущее устройство в вашу систему с несколькими источниками:

    ЗАМЕНИТЬ МАСТЕР НА MASTER_HOST='master1', MASTER_USER='rpl', MASTER_PORT=3451, MASTER_PASSWORD='' \ MASTER_LOG_FILE='master1-bin.000006', MASTER_LOG_POS=628 ДЛЯ КАНАЛА 'master-1';

  2. auto_increment_increment — это сумма, которую сервер будет увеличивать каждый раз, когда генерируется автоматически увеличивающееся значение. Эта переменная предназначена для использования с репликацией master-master, не думайте, что вы сможете использовать ее в настройке репликации с несколькими источниками.

  3. Вы также можете использовать таблицы MyISAM.
  4. Если вы хотите реплицировать только определенные таблицы, вы можете использовать параметр «replicate_do_table=table_name» в вашем файле my.cnf. Для игнорирования вы можете использовать параметр «replicate_ignore_table» из вашего файла my.cnf.
person Community    schedule 09.05.2017