Здравствуйте! Столкнулся с проблемой в percona56. Допустим есть схема репликации Master <--> Slave . Создаём на мастере event
CREATE EVENT `test_event`
ON SCHEDULE
EVERY 1 MINUTE
ON COMPLETION
PRESERVE
DO
insert into test1 (unix_time) values (NOW() + 0);
Который просто каждую минуту пишет в таблицу test1 дату. После чего видим на мастере
EVENT_CATALOG: def
EVENT_SCHEMA: test
EVENT_NAME: test_event
DEFINER: root@localhost
TIME_ZONE: SYSTEM
EVENT_BODY: SQL
EVENT_DEFINITION: insert into test1 (unix_time) values (NOW() + 0)
EVENT_TYPE: RECURRING
EXECUTE_AT: NULL
INTERVAL_VALUE: 1
INTERVAL_FIELD: MINUTE
SQL_MODE: NO_ENGINE_SUBSTITUTION
STARTS: 2017-07-19 15:57:12
ENDS: NULL
STATUS: ENABLED
ON_COMPLETION: PRESERVE
CREATED: 2017-07-19 15:57:12
LAST_ALTERED: 2017-07-19 15:57:12
LAST_EXECUTED: 2017-07-20 13:56:12
EVENT_COMMENT:
ORIGINATOR: 10
CHARACTER_SET_CLIENT: utf8
COLLATION_CONNECTION: utf8_general_ci
DATABASE_COLLATION: latin1_swedish_ci
и на слэйве
EVENT_CATALOG: def
EVENT_SCHEMA: test
EVENT_NAME: test_event
DEFINER: root@localhost
TIME_ZONE: SYSTEM
EVENT_BODY: SQL
EVENT_DEFINITION: insert into test1 (unix_time) values (NOW() + 0)
EVENT_TYPE: RECURRING
EXECUTE_AT: NULL
INTERVAL_VALUE: 1
INTERVAL_FIELD: MINUTE
SQL_MODE: NO_ENGINE_SUBSTITUTION
STARTS: 2017-07-19 08:57:12
ENDS: NULL
STATUS: SLAVESIDE_DISABLED
ON_COMPLETION: PRESERVE
CREATED: 2017-07-19 08:57:12
LAST_ALTERED: 2017-07-19 08:57:12
LAST_EXECUTED: NULL
EVENT_COMMENT:
ORIGINATOR: 10
CHARACTER_SET_CLIENT: utf8
COLLATION_CONNECTION: utf8_general_ci
DATABASE_COLLATION: latin1_swedish_ci
Всё ок, всё работает... до того момента, как нам необходимо сменить роли. Теперь делаем из слэйва мастера, а из мастера слэйва и-и-и - статус эвента не меняется ни там, ни там. То есть фактически получается, что теперь слэйв пишет в таблицу test1 , а у мастера статус SLAVESIDE_DISABLED
и хоть он уже не слэйв - ничего не происходит.
Собственно вопрос: А как с этим бороться? Каждый раз руками статусы менять эвентам? А если у меня их тысячи? Или может я чего неправильно делаю?
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Тестирую mysql инъекцию на своем сайте конечно же, и стало интересно, select легко делается, а можно ли сделать update через инъекцию? через get
Возможно ли в MySQL добавлять динамически псевдонимы полей?