3

我试图每 24 小时更新一次我的表。我尝试了以下示例,但事件仅触发一次

CREATE EVENT mydb.time_sync
ON SCHEDULE
  EVERY '1 0' DAY_HOUR       
STARTS '2013-01-16 16:53:00' 
DO
  UPDATE mydb.mytable SET is_time_sync = 0;

我尝试了另一个,但它又重复了一次

CREATE EVENT mydb.time_sync2
ON SCHEDULE
  EVERY 24 DAY_HOUR       
DO
  UPDATE mydb.mytable SET is_time_sync = 0;

这也失败了一次

CREATE EVENT mydb.time_sync3
ON SCHEDULE EVERY '1' DAY
STARTS '2013-01-16 16:53:00' 
DO
    UPDATE mydb.mytable SET is_time_sync = 0;

我正在使用 MySQL 5.5 并且事件调度程序已打开

4

1 回答 1

0

您正在编写的事件的查询没问题,但是您缺少一件事。您尚未启用导致它仅执行一次触发器的事件调度程序。

要启用,您必须在默认 MySQL 配置文件event_scheduler=on的部分下写入某处[mysqld],通常是 /etc/my.cnf 或 my.ini

于 2013-01-29T09:58:30.573 回答