# MySQL事件创建和修改(类似Oracle job)

写了几个事件定期转储日志,因日志内容增加需修改mysql事件

# 更改事件ALTER EVENT语句,如下所示

-- 查询事件
SHOW EVENTS FROM studymysql;

-- 修改事件
ALTER EVENT event_name
ON SCHEDULE schedule
ON COMPLETION [NOT] PRESERVE
RENAME TO new_event_name
ENABLE | DISABLE
DO
  event_body

# 创建事件,每分钟向messages表中插入一条新记录

CREATE EVENT test_event_04
ON SCHEDULE EVERY 1 MINUTE
DO
   INSERT INTO messages(message,created_at)
   VALUES('测试ALTER EVENT语句',NOW());

要使事件每2分钟运行一次,请使用以下语句:

ALTER EVENT test_event_04
ON SCHEDULE EVERY 2 MINUTE;

您还可以通过指定新逻辑来更改事件的主体,如下所示:

ALTER EVENT test_event_04
DO
   INSERT INTO messages(message,created_at)
   VALUES('Message from event',NOW());

# 禁用事件

ALTER EVENT test_event_04
DISABLE;