15

我想在每天的第一分钟增加一个字段,然后一旦达到某个值,将值设置为 1。我想直接在 MySQL 中执行此操作,但最好通过 phpMyAdmin。

我知道Event Scheduler,所以我正在寻找一种通过 phpMyAdmin 使用和管理它的方法。这可能吗?

4

3 回答 3

33

它是.. 只需CREATE EVENT从 SQL 框中发出适当的 SQL。

但是:您的 MySQL 服务器需要启用事件调度程序并具有EVENT数据库用户的权限。

调用SELECT @@event_scheduler;将告诉您调度程序是否可用并已启用。

要启用事件调度程序,如果它被禁用,请尝试调用SET GLOBAL event_scheduler := 1; 您需要SUPER成功的权限。

于 2011-07-08T09:29:57.343 回答
25

在 phpmyadmin 中选择查询浏览器运行查询到 ON 事件调度程序

SET GLOBAL event_scheduler = ON;

只有超级特权用户才能执行此操作。通过

GRANT EVENT ON myschema.* TO jon@ghidora;

通过以下方式检查 event_sheduler 状态 ON 或 OFF

SELECT @@event_scheduler;

如果状态为 ON 继续创建事件

CREATE EVENT e_store_ts
    ON SCHEDULE
      EVERY 10 SECOND
    DO
      INSERT INTO myschema.mytable VALUES (UNIX_TIMESTAMP());

查看创建的事件

SHOW EVENTS;
于 2012-11-16T09:07:53.003 回答
3

如果在 Amazon RDS 上执行此操作,您需要编辑要添加的参数组EVENT_SCHEDULER = ON。一种简单的方法是通过免费的 Rightscale 帐户。

于 2012-07-20T12:30:15.950 回答