16.1.2.1 Настройка источника репликации
Чтобы настроить источник для использования репликации на основе позиции файла бинарного журнала, необходимо убедиться, что включено ведение бинарного журнала и установить уникальный идентификатор сервера.
Каждый сервер в топологии репликации должен быть настроен с уникальным идентификатором сервера, который можно указать с помощью системной переменной server_id. Этот идентификатор сервера используется для идентификации отдельных серверов в топологии репликации и должен быть положительным целым числом от 1 до (232)−1. Вы можете динамически изменить значение server_id с помощью такого запроса:
SET GLOBAL server_id = 2;
При стандартном идентификаторе сервера 0 источник отклоняет любые подключения от реплик, а реплика отказывается подключаться к источнику, поэтому это значение нельзя использовать в топологии репликации. Кроме этого, организация и выбор идентификаторов серверов зависят от вас, при условии, что каждый идентификатор сервера отличается от всех других идентификаторов серверов, используемых любым другим сервером в топологии репликации. Обратите внимание, что если ранее было задано значение 0 для идентификатора сервера, вам необходимо перезапустить сервер, чтобы инициализировать источник с новым ненулевым идентификатором сервера. В противном случае перезапуск сервера не требуется, если не требуется включить ведение бинарного журнала или внести другие изменения в конфигурацию, требующие перезапуска.
Ведение бинарного журнала обязательно включить на источнике, так как бинарный журнал служит основой для репликации изменений из источника в его реплики. Если ведение бинарного журнала на источнике не включено с помощью опции log-bin, репликация невозможна. Чтобы включить ведение бинарного журнала на сервере, где оно еще не включено, необходимо перезапустить сервер. В этом случае нужно остановить сервер MySQL и отредактировать файл my.cnf или my.ini. В секции [mysqld] файла конфигурации добавьте опции log-bin и server-id. Если эти опции уже существуют, но закомментированы, раскомментируйте их и измените их в соответствии со своими потребностями. Например, чтобы включить ведение бинарного журнала с префиксом имени файла лога mysql-bin и настроить идентификатор сервера 1, используйте следующие строки:
[mysqld]
log-bin=mysql-bin
server-id=1
После внесения изменений перезапустите сервер.
Следующие опции влияют на эту процедуру:
Для максимальной надежности и согласованности в настройке репликации с использованием
InnoDBс транзакциями, вы должны использоватьinnodb_flush_log_at_trx_commit=1иsync_binlog=1в файлеmy.cnfисточника.Убедитесь, что системная переменная
skip_networkingне включена на вашем источнике. Если сетевое взаимодействие отключено, реплика не может связаться с источником, и репликация завершается неудачно.
© 2025 Oracle
Licensed under the GPLv2 License.