Из того, что я смог найти в Интернете, mysql хранит операторы, которые изменяют данные в журнале bin, которые затем считываются ведомым. Что остается непонятным, что происходит с этими утверждениями дальше? Повторяются ли они, как если бы они были на ведомом сервере?Как работает репликация mysql?
Например, скажем, что есть запрос с текущим временем в условном выражении, например, «UPDATE something SET updatedat = NOW()», и из-за задержки репликации запрос заканчивается на подчиненном устройстве через пару секунд. Будут ли отличаться значения в таблице?
Или, если есть мастер-мастер репликации, во время 1000 следующий запрос происходит на сервере 1:
UPDATE t SET data = 'old', updatedat = 1000 WHERE updatedat < 1000
Во время 1001 на сервере 2 следующий запрос происходит:
UPDATE t SET data = 'new', updatedat = 1001 WHERE updatedat < 1001
Тогда сервер 2 выбирает журнал репликации с сервера 1, значение на сервере 2 будет «старым»? Если да, есть ли способ избежать этого?