資料庫定時任務測試
#檢視當前是否已開啟事件排程器
SHOW VARIABLES LIKE 'event_scheduler';
#要想保證能夠執行event事件,就必須保證定時器是開啟狀態,預設為關閉狀態
SET GLOBAL event_scheduler =1;
#或者set GLOBAL event_scheduler = ON;
# 選擇庫
USE TRAVEL_CARD_UAT;
# 如果原來存在該名字的任務計劃則先刪除
DROP event IF EXISTS SetEVToInvalidStatus_AtNight_0100;
DELIMITER $$
# 每天晚上01:00
CREATE event SetEVToInvalidStatus_AtNight_0100
#on schedule every 1 DAY starts timestamp '2017-04-24 10:00:00'
# 測試使用
ON SCHEDULE EVERY 1 MINUTE STARTS TIMESTAMP '2018-07-20 10:32:00'
DO
BEGIN
START TRANSACTION;
SET @timenow=NOW(); #開始事務
# 表1
UPDATE hi_play_item SET state=1 WHERE state=0;
# 表2
# update tb_ev_stock_details set FSTATUS=3 where FSTATUS=0 and FVALIDENDDATE < @timenow ;
COMMIT; #提交事務
END $$
DELIMITER ;
# 停止
ALTER EVENT SetEVToInvalidStatus_AtNight_0100 DISABLE;
# 開啟
ALTER event SetEVToInvalidStatus_AtNight_0100 ENABLE;
# 檢視狀態
SELECT * FROM mysql.event
--------------------- 本文來自 weixin_tt 的CSDN 部落格 ,全文地址請點選:https://blog.csdn.net/weixin_42034166/article/details/82968711?utm_source=copy