相关疑难解决方法(0)

MySQL 事件不运行

我正在运行mysql 5.1.41,它与xamppWindows捆绑在一起。问题是事件不会自动运行,即使event schedulerON. 我有一个名为ta_tableusing的表innodb engine,它有 4 个字段,其中ti_time一个timestamp类型的默认值为current timestamp. 该字段ti_time被赋予插入行的时间戳值。现在我想从表中删除所有 2 小时前的行,ta_table所以我创建了一个事件,该事件如下所示

CREATE EVENT ev ON SCHEDULE EVERY 1 MINUTE STARTS 2011-07-17 14:54:52 ENABLE 
    DO
    begin
    delete from ta_table where timestampdiff(minute,ti_time,now())>120;
    end
Run Code Online (Sandbox Code Playgroud)

现在此事件应删除ti_time字段大于 2 小时(120 分钟)的任何行。当我执行此查询时

delete from ta_table where timestampdiff(minute,ti_time,now())>120;
Run Code Online (Sandbox Code Playgroud)

有用。它删除超过 2 小时的行。这意味着我的查询是正确的,但事件没有运行。我的事件调度程序正在运行,我确认了show processlist 它,它显示了 2 个进程根和事件调度程序。该state事件调度的是waiting for next activation。当我运行这个查询时

SELECT …
Run Code Online (Sandbox Code Playgroud)

mysql mysql-5 mysql-5.5 mysql-5.1

4
推荐指数
1
解决办法
2万
查看次数

标签 统计

mysql ×1

mysql-5 ×1

mysql-5.1 ×1

mysql-5.5 ×1