Назад | Перейти на главную страницу

Должна ли репликация mySQL: имя главной БД совпадать с именем подчиненной БД?

Я установил имя главной БД как MDB, а на подчиненном сервере я установил replicate-do-db = SDB, но это не сработало. Но когда я настроил его как то же имя БД, он работает. Есть ли какое-либо решение для настройки одного главного БД с двумя разными подчиненными, но на одном сервере?

Репликация MySQL выполняется на сервере, а не на базе данных.

База данных - это просто каталог связанных таблиц; это не должно считаться ни чем больше. Репликация всегда реплицирует имя базы данных, а также имя таблицы.

Вы можете выполнять репликацию с одного сервера на другой на одном и том же хосте (запуск нескольких экземпляров mysql не проблема).

Вы не можете и не должны делать репликацию в другой каталог на том же сервере.

Ваш вопрос кажется несколько запутанным, поскольку вы говорите о двух совершенно разных вещах.

  1. Главный и подчиненный реплицируют базу данных с другим именем - не будет работать, так как имя базы данных является идентификатором.
  2. Наличие главного устройства и одного или нескольких подчиненных устройств на одной машине - нет проблем, просто запустите их на разных портах.

Рабы должны быть идентичны своим хозяевам. Подчиненная база данных предназначена для размещения на другом сервере. Если вы хотите, чтобы подчиненное устройство отображалось в том же поле сервера, что и мастер, вы можете рассмотреть возможность визуализации. Однако я сомневаюсь, что визуализация подчиненного БД - эффективная идея. Если визуализация выглядит привлекательно, возможно, вы захотите пересмотреть расположение сервера.

Это прямо из документации.

replicate-rewrite-db = slavedb-> masterdb Я знаю, что это работает, я просто настроил его, и он работает