Настройка мастера
У меня довольно тепличные условия, и база пустая, дамп будем вливать после настройки
my.cnf
binlog-format=ROW
Бывает трех видов — STATEMENT, MIXED и ROW
В двух словах — statement пишет в бинлог по сути sql запросы. Преимущества — старый формат, оттестированный, лог небольшой, можно посмотреть запросы. Недостатки — проблемы с функциями и триггерами, запросы вида update user set a=1 order by rand(), а так же еще некоторые могут некорректно отрабатываться. ROW если совсем упрощенно — пишет в логи измененные бинарные данные. Преимущества — отлично логируются все виды запросов. Недостатки — огромный лог.Ну и mixed — промежуточный формат, который старается использовать statement, когда возможно, а когда нет — row. Говорят, что глючит на каких то очень сложных запросах. Именно его я и рискнул использовать
binlog-checksum=crc32
Новая фича mysql5.6, вроде как ускоряет работу бинлога
gtid-mode=on
Собственно и включает ту самую GTID mode репликацию
enforce-gtid-consistency=true
Запрещает все, что может поломать транзакции.
log-slave-updates=true
В родной документации написано: указывает подчиненному серверу, чтобы тот вел записи об обновлениях, происходящих на подчиненном сервере, в двоичном журнале. По умолчанию эта опция выключена. Ее следует включить, если требуется организовать подчиненные серверы в гирляндную цепь.
server-id = 1
Уникальный номер для каждого сервера
ну и не забываем указать что именно мы будем реплицировать —
replicate-do-db = mybase
replicate-do-table=mybase.mytable1
replicate-do-table=mybase.mytable2
После этого необходимо создать пользователя mysql с правами репликации. Например так GRANT replication slave ON *.* TO «replication»@'192.168.1.102' IDENTIFIED BY 'password';
На этом настройка мастера закончена. Вливаем дамп и в бой )
Настройка слейва
В простейшем варианте на слейв можно скопировать тот же конфиг, что и на мастере, единственное что — нужно сменить server_id, например на 2.
Перезапускаем слейв, и запускаем репликацию
change master to master_host='192.168.1.1", master_auto_position=1, Master_User=’replication’, master_password=’password';
start slave;
и любуемся
show slave status \G
This entry passed through the Full-Text RSS service - if this is your content and you're reading it on someone else's site, please read the FAQ at http://ift.tt/jcXqJW.
Комментариев нет:
Отправить комментарий