MySQL定時(shí)任務(wù)不能正常執(zhí)行的原因分析及解決方法
前言
在使用數(shù)據(jù)庫(kù)定時(shí)任務(wù)時(shí),常常會(huì)出現(xiàn)定時(shí)任務(wù)不執(zhí)行的問(wèn)題,現(xiàn)對(duì)該問(wèn)題出現(xiàn)的原因及解決方案做一些分析和整理。
原因分析及解決方法
當(dāng)我們發(fā)現(xiàn)MySQL的定時(shí)任務(wù)沒(méi)有執(zhí)行時(shí),首先去定時(shí)任務(wù)中查看【上次運(yùn)行】時(shí)間是否正確,判斷其是否正常執(zhí)行,如果正常執(zhí)行則需要考慮是否是事件邏輯不正確。

如果上次運(yùn)行時(shí)間為空或者不正確,則需要查看數(shù)據(jù)庫(kù)是否打開(kāi)了定時(shí)任務(wù),通過(guò)執(zhí)行下列查詢(xún)語(yǔ)句進(jìn)行查詢(xún)
show VARIABLES like ‘%event_schedule%'
如果結(jié)果為ON則說(shuō)明數(shù)據(jù)庫(kù)打開(kāi)了定時(shí)任務(wù),為OFF則沒(méi)有打開(kāi)。

如果查詢(xún)結(jié)果為OFF,有兩種解決方法:
1.直接在數(shù)據(jù)庫(kù)中設(shè)置
SET GLOBAL event_scheduler = ON;
該方法可以立即生效,但是在數(shù)據(jù)庫(kù)重啟后會(huì)失效。
2.在數(shù)據(jù)庫(kù)配置文件中進(jìn)行修改
在my.ini的[mysqld]模塊中添加如下代碼:
event_scheduler=ON
該方法需要重啟數(shù)據(jù)庫(kù)才能生效,不會(huì)隨數(shù)據(jù)庫(kù)重啟而失效。
啟動(dòng)了數(shù)據(jù)庫(kù)的定時(shí)任務(wù)后,還需要查看你自己的定時(shí)任務(wù)是否可執(zhí)行,在數(shù)據(jù)庫(kù)中執(zhí)行如下查詢(xún)語(yǔ)句:
show events
查看查詢(xún)結(jié)果中的Status是否正確,結(jié)果為ENABLE代表已啟動(dòng)。

如果狀態(tài)不為ENABLE,我們需要在定時(shí)任務(wù)的狀態(tài)欄將其修改為ENABLE。

讓定時(shí)任務(wù)快速執(zhí)行
有些定時(shí)任務(wù)是每天或更久才執(zhí)行一次,如果想要時(shí)間自然流動(dòng)去測(cè)試會(huì)比較麻煩,這個(gè)時(shí)候,我們就需要根據(jù)計(jì)劃修改數(shù)據(jù)庫(kù)服務(wù)器的時(shí)間,這樣就能快速測(cè)試這個(gè)定時(shí)任務(wù)是否能夠正常執(zhí)行了。
總結(jié)
到此這篇關(guān)于MySQL定時(shí)任務(wù)不能正常執(zhí)行的原因分析及解決方法的文章就介紹到這了,更多相關(guān)MySQL定時(shí)任務(wù)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
MySQL與Mongo簡(jiǎn)單的查詢(xún)實(shí)例代碼
本文通過(guò)一個(gè)實(shí)例給大家用MySQL和mongodb分別寫(xiě)一個(gè)查詢(xún),本文圖片并茂給大家介紹的非常詳細(xì),感興趣的朋友參考下吧2016-10-10
MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出的三種辦法總結(jié)
當(dāng)我們需要切換數(shù)據(jù)庫(kù)或備份數(shù)據(jù)時(shí),導(dǎo)入和導(dǎo)出數(shù)據(jù)庫(kù)是一個(gè)常見(jiàn)的操作,下面這篇文章主要給大家介紹了關(guān)于MySQL數(shù)據(jù)導(dǎo)入導(dǎo)出的三種辦法,文中通過(guò)代碼介紹的非常詳細(xì),需要的朋友可以參考下2024-05-05
mysql 松散的索引掃描(Loose index scan)
今天讀《High Performance MySQL》,發(fā)現(xiàn)一個(gè)“Loose index scan”,之前完全沒(méi)有聽(tīng)說(shuō)過(guò)。網(wǎng)上查了些資料,這個(gè)叫松散的索引掃描(Loose index scan)2016-05-05
MySQL表操作插入數(shù)據(jù)insert語(yǔ)句學(xué)習(xí)(小白入門(mén)篇)
這篇文章主要為大家介紹了MySQL表操作插入數(shù)據(jù)insert語(yǔ)句學(xué)習(xí)小白入門(mén)篇,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-05-05
MySQL Index Condition Pushdown(ICP)性能優(yōu)化方法實(shí)例
這篇文章主要介紹了MySQL Index Condition Pushdown(ICP)性能優(yōu)化方法實(shí)例,本文講解了概念介紹、原理、實(shí)踐案例、案例分析、ICP的使用限制等內(nèi)容,需要的朋友可以參考下2015-05-05

