|
mysql event是mysql的事件调度器,可以定时执行。有点像linux下的crontab,不过mysql event可以精确到秒。用event后,可以部分取代crontab的定时执行,不过event稳不稳定就不知道了。
一,查看mysql event 是不是开启
-
mysql> show variables like "event%";
-
+-----------------+-------+
-
| Variable_name | Value |
-
+-----------------+-------+
-
| event_scheduler | OFF |
-
+-----------------+-------+
-
1 row in set
如果没有开启,可以SET GLOBAL event_scheduler = 1;或者在my.cnf中[mysqld]加上event_scheduler=1,保存重起mysql。
二,举个简单的例子
-
Create Table: CREATE TABLE `test` (
-
`time` varchar(20) DEFAULT NULL
-
) ENGINE=MyISAM DEFAULT charset=utf-8
-
1 row in set (0.00 sec)
-
-
-
mysql> CREATE EVENT IF NOT EXISTS test_event ON SCHEDULE EVERY 5 SECOND do insert into test(time)values(now());
-
Query OK, 0 rows affected
-
-
mysql> select * from test;
-
+---------------------+
-
| time |
-
+---------------------+
-
| 2011-04-23 09:14:52 |
-
+---------------------+
-
| 2011-04-23 09:14:57 |
-
+---------------------+
-
2 row in set
|