我有一个 MySQL 事件如下:
CREATE EVENT IF NOT EXISTS `PeriodicPartitioning`
ON SCHEDULE EVERY 1 MINUTE
STARTS NOW()
DO
CALL AddPartition(NOW() + INTERVAL 2 YEAR)
AddPartition(DATE)
是根据给定日期向表中添加新分区的过程。我已经测试过该过程在显式调用时运行正常。但是,当我创建事件(没有错误)并等待几分钟以查看它是否真的在做任何事情时,我看不到创建的分区,这表明它没有成功运行。
这是 mysql 错误日志中的相对位:
Events status:
LLA = Last Locked At LUA = Last Unlocked At
WOC = Waiting On Condition DL = Data Locked
Event scheduler status:
State : INITIALIZED
Thread id : 0
LLA : n/a:0
LUA : n/a:0
WOC : NO
Workers : 0
Executed : 0
Data locked: NO
Event queue status:
Element count : 1
Data locked : NO
Attempting lock : NO
LLA : create_event:217
LUA : create_event:221
WOC : NO
Next activation : never
我不明白日志说什么。我怀疑它说的时候有问题Next activation: never
?有人可以解释这是什么意思吗?
编辑
从第一条评论中,ti 发现该变量event_scheduler
被设置为 OFF 并将其设置为ON
让它像魅力一样运行:)