首頁  >  文章  >  資料庫  >  MySQL事件的使用詳解

MySQL事件的使用詳解

黄舟
黄舟原創
2017-08-01 17:14:084607瀏覽

在系統管理或資料庫管理中,常常要週期性的執行某一個指令或是SQL語句。這時候就會用到mysql事件,使用這個功能必須確保是mysql的版本是5.1以上。

1.首先要查看事件是否開啟了,

SHOW VARIABLES LIKE 'event_scheduler';
SELECT @@event_scheduler;
SHOW PROCESSLIST;

星之星sql

MySQL事件的使用詳解

2.我們先開啟mysql事件,1,透過動態參數修改:SET GLOBAL event_scheduler = ON;注意:還是要在my.cnf中加入event_scheduler=ON。因為如果沒有增加的話,mysql重啟事件又會回到原來的狀態了。

MySQL事件的使用詳解

3.下面我會建立一個測試的資料庫表,

CREATE TABLE `test` (  
`ID` int(11) NOT NULL AUTO_INCREMENT,  
`lpnam` datetime DEFAULT NULL,  
PRIMARY KEY (`id`))
ENGINE=InnoDB 
AUTO_INCREMENT=106 
DEFAULT CHARSET=utf8

建立一個資料庫表格做為測試

MySQL事件的使用詳解

4.下面我們建立mysql事件,

CREATE EVENT IF NOT EXISTS test123 ON SCHEDULE EVERY 3 SECOND
ON COMPLETION PRESERVE
DO INSERT INTO ceshisy(lpname) VALUES(NOW());

執行sql創建mysql事件

MySQL事件的使用詳解

5.創建完成以後我們看一次是不是執行了,查看一下資料庫表格

MySQL事件的使用詳解

##6.總結一下語法:

DEFINER: 定义事件执行的时候检查权限的用户。
ON SCHEDULE schedule: 定义执行的时间和时间间隔。
ON COMPLETION [NOT] PRESERVE: 定义事件是一次执行还是永久执行,默认为一次执行,即NOT PRESERVE。
ENABLE | DISABLE | DISABLE ON SLAVE: 定义事件创建以后是开启还是关闭,以及在从上关闭。如果是从服务器自动同步主上的创建事件的语句的话,会自动加上DISABLE ON SLAVE。
COMMENT 'comment': 定义事件的注释。


以上是MySQL事件的使用詳解的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn