mysql event 是什麼,有什麼用
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=latin1
- 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