Как я могу обнаружить триггер в своем подчиненном устройстве, который был вызван реплицированным выражением в MySQL?Определить, что триггер в подчиненном вызове был вызван реплицированным утверждением
Я попытался с функцией USER(), но он возвращает null, когда триггер активируется реплицированным утверждением. Должен ли он возвращать пользователя репликации (repl)?
Пример:
CREATE TRIGGER `test`.`t1_BEFORE_INSERT` BEFORE INSERT ON `t1` FOR EACH ROW
BEGIN
IF USER() LIKE '[email protected]%'
THEN
SIGNAL SQLSTATE '45000' SET MESSAGE_TEXT = 'Custom error';
END IF;
END
Я хочу, чтобы поведение триггера будет отличаться в зависимости от он активируется реплицированного заявление или нет. Я настроил репликацию на основе инструкций, и я проверил, что триггеры запускаются в моем подчиненном устройстве.
Это не сработает. Эта переменная будет иметь такое же значение независимо от того, какой пользователь запускает триггер. Если вы внимательно прочитаете, я уже спрашиваю о спусковом крючке в подчиненном, у меня нет триггеров в мастер. – antgar9