mysql查看事件是否执行

anonymity
anonymity 原创
2019-05-08 17:24:27 4972浏览

什么是MySQL事件?

mysql5.1版本开始引进event概念。event既“时间触发器”,与triggers的事件触发不同,event类似与linux crontab计划任务,用于时间触发。通过单独或调用存储过程使用,在某一特定的时间点,触发相关的SQL语句或存储过程。

MySQL事件怎么操作?

查看事件是否开启:

select @@event_scheduler;

show variables like 'event_scheduler';

show events; show full events;show create event event_name;

show processlist;

查看EVENT命令有如下几种:
(1)查询mysql.event表;
(2)通过SHOW EVENTS命令;
(3)通过SHOW FULL EVENTS命令;
(4)通过查询information_schema.events表
(5)SHOW CREATE EVENT。
总之,event的使用频率较低建议使用root用户进行创建和维护。

查询information_schema.events表

select * from information_schema.events limit 1\g;

开启mysql的事件:

set global event_scheduler = on;参数立刻生效

更改配置文件然后重启event_scheduler=on

在my.cnf中的[mysqld]部分添加,然后重启mysql。

通过制定事件参数启动

mysqld ... --event_scheduler=on

使用建议

1) 主库已执行过,从库上务保证event不会执行(除非故意在slave上创建的event)

2) 创建,删除等操作严禁直接操作mysql.event表,而是通过create等正规语法实现

3) 创建的event涉及到海量数据变更的话,要做好充分测试,确保不影响现网服务

4) 如果需要备份带有event的DB,mysqldump时需要加上--event参数

以上就是mysql查看事件是否执行的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。