Я пробовал репликацию master-slave нескольких баз данных mariadb-5.5.52-1 в среде RHEL, mariadb появился как часть приложения nagiosxi. при репликации от ведущего к ведомому у меня было много повторяющихся ошибок 1602, ведущее устройство не могло перезаписать значения, которые были в ведомом. пожалуйста, предоставьте мне ценный источник или информацию, чтобы решить эту проблему.
Я следил за этими URL-адресами, чтобы выполнить ответ "ведущий-ведомый" https://forums.mysql.com/read.php?26,171776,205870 https://tunnelix.com/simple-master-master-replication-on-mariadb/
заранее спасибо
Привет, Мохан, непонятно, хотите ли вы, чтобы господин господствовал или господин рабам? Настроить master на slave довольно просто. Особенно, если вы сделали это раз или два.
В этом сценарии машина A является ведущей. Вам необходимо отредактировать файл /etc/my.cnf на машине A
В разделе [mysqld] включите двоичное ведение журнала и определите serverID.
[mysqld]
log-bin=mysql-bin
server-id=1
innodb_flush_log_at_trx_commit=1
sync_bin_log=1
Перезагрузите Mariadb и подключитесь Создайте пользователя репликации.
MariaDB [(none)]> create user 'repl'@'10.0.0.1' identified by 'password' ;
MariaDB [(none)]> grant replication slave on *.* to 'repl'@'10.0.0.1';
Заблокируйте таблицы и экспортируйте данные.
MariaDB [(none)]> flush tables with read lock;
Найдите расположение двоичного журнала.
MariaDB [(none)]> show master status
Создайте дамп базы данных.
mysqldump --all-databases --master-data -uroot -p >/tmp/master.sql
Разблокируйте столы.
MariaDB [(none)]> unlock tables;
Скопируйте master.sql на подчиненный сервер.
О рабе.
Отредактируйте /etc/my.cnf
[mysqld]
server-id=2
Настроить раба
MariaDB [(none)]> change master to
-> master_host='10.0.0.2'
-> master_user='repl'
-> master_password='password'
-> master_log_file='mysql_bin.00001'
-> master_log_pos=481
Чтобы получить master_log_file и master_log_pos, вы получите это, когда запустите show master status на главном сервере.
Импортировать резервную копию базы данных
mysql -uroot -p </tmp/master.sql
Затем запустите подчиненный процесс.
MariaDB [(none)]> start slave;
Проверить статус ведомого