MySqlイベントタスク

1260 ワード

一、event状態
イベントが開いているかどうかを確認
show variables like '%sche%';

イベントを開くscheduler
set global event_scheduler = on;

再起動時にイベントがまだ開いている状態を設定
windows
my.iniプロファイル
[mysqld]
event_scheduler = ON

linux
my.cnfプロファイル
[mysqld]
event_scheduler = ON

二、イベントタスクの作成
DROP EVENT IF EXISTS `update_event`;
--                   
DELIMITER ;;
--   
CREATE EVENT `update_event` ON SCHEDULE EVERY 1 DAY STARTS '2016-09-01 00:00:00' ON COMPLETION NOT PRESERVE ENABLE DO
-- CREATE EVENT `update_event`:    `update_event`   
-- ON SCHEDULE EVERY 1 DAY STARTS '2016-09-01 00:00:00':      ,    '2016-09-01 00:00:00'
-- ON COMPLETION [NOT] PRESERVE:         (  /   )   
-- ENABLE DO:         

BEGIN --     


--   1
insert into xx(
    xxx
)
SELECT 
    xxx
FROM 
    xxx;

--   1
update 
    xx 
set 
    xx=xx
where 
    xx=xx;


END;; --     
DELIMITER ;

三、イベントタスクスイッチ
口座開設イベントタスク
alter event update_event ON COMPLETION PRESERVE ENABLE;  

イベントタスクを閉じる
alter event update_event ON COMPLETION PRESERVE DISABLE;

2016/9/21 14:02:34