我在 MySQL 中设置了一个重复事件,每 1 分钟执行一次:
BEGIN
DELETE FROM session WHERE `date` < DATE_SUB(NOW(), INTERVAL 1 MINUTE);
END
由于某种原因,我的 session 条目,例如日期参数为
的 session 条目尽管2019-01-19 18:28:24
SELECT NOW();
当前返回,但并未被删除
2019-01-19 18:44:15
所以这是创建日期之后一分多钟的时间,证明时区不是问题。我的事件只是无法执行还是事件本身有问题?
编辑:请注意,该事件设置为每分钟执行一次,并删除超过一分钟的 session 条目,而不仅仅是其中一个。上面没有显示重复间隔,但我确认它是 1 分钟。
最佳答案
我必须跑
SET GLOBAL event_scheduler = on;
为了解决这个问题。自从上次测试以来,我重新启动了 XAMPP 本地服务器,这就是它突然停止工作的原因。
关于MySQL 重复事件未执行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54272335/