-- mysql事件实战
-- 查看事件是否开启
show variables like 'event_scheduler';
select @@event_scheduler;
show processlist;
-- 如果看到event_scheduler为on活着processlist中显示有event_scheduler的信息说明已经开启了事件
-- 否则说明事件没有开启,我们需要开启它
-- 开启方式:1:通过动态参数修改
set global event_scheduler= ON;
-- 注意:还是要在my。cnf中添加event_scheduler=ON,如果没有添加
-- mysql重启事件又会回到原来的状态了
use ejabberd;
alter table mytest auto_increment=106;
show create table mytest;
show events;
-- 创建一个测试的test表
CREATE TABLE `ejabberd`.`mytest` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`t1` datetime DEFAULT NULL,
`id2` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
-- 创建一个每隔3秒往mytest表中插入一条数据的事件
drop event if exists mytest;
create event if not exists my
-- 查看事件是否开启
show variables like 'event_scheduler';
select @@event_scheduler;
show processlist;
-- 如果看到event_scheduler为on活着processlist中显示有event_scheduler的信息说明已经开启了事件
-- 否则说明事件没有开启,我们需要开启它
-- 开启方式:1:通过动态参数修改
set global event_scheduler= ON;
-- 注意:还是要在my。cnf中添加event_scheduler=ON,如果没有添加
-- mysql重启事件又会回到原来的状态了
use ejabberd;
alter table mytest auto_increment=106;
show create table mytest;
show events;
-- 创建一个测试的test表
CREATE TABLE `ejabberd`.`mytest` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`t1` datetime DEFAULT NULL,
`id2` int(11) NOT NULL DEFAULT '0',
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
-- 创建一个每隔3秒往mytest表中插入一条数据的事件
drop event if exists mytest;
create event if not exists my

本文介绍了MySQL事件和存储过程的使用,包括查看事件状态、创建及管理事件、执行存储过程等操作,如定时插入数据、清空表、更新特定字段、调用删除过期记录的存储过程等。
最低0.47元/天 解锁文章
1995





