溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

Mysql數(shù)據(jù)庫中怎么創(chuàng)建一個(gè)事件

發(fā)布時(shí)間:2021-07-24 16:20:08 來源:億速云 閱讀:306 作者:Leah 欄目:數(shù)據(jù)庫

Mysql數(shù)據(jù)庫中怎么創(chuàng)建一個(gè)事件,針對(duì)這個(gè)問題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問題的小伙伴找到更簡單易行的方法。

  事件簡介

  事件(event)是MySQL在相應(yīng)的時(shí)刻調(diào)用的過程式數(shù)據(jù)庫對(duì)象。一個(gè)事件可調(diào)用一次,也可周期性的啟動(dòng),它由一個(gè)特定的線程來管理的,也就是所謂的“事件調(diào)度器”。

  事件和觸發(fā)器類似,都是在某些事情發(fā)生的時(shí)候啟動(dòng)。當(dāng)數(shù)據(jù)庫上啟動(dòng)一條語句的時(shí)候,觸發(fā)器就啟動(dòng)了,而事件是根據(jù)調(diào)度事件來啟動(dòng)的。由于他們彼此相似,所以事件也稱為臨時(shí)性觸發(fā)器。

  事件取代了原先只能由操作系統(tǒng)的計(jì)劃任務(wù)來執(zhí)行的工作,而且MySQL的事件調(diào)度器可以精確到每秒鐘執(zhí)行一個(gè)任務(wù),而操作系統(tǒng)的計(jì)劃任務(wù)(如:Linux下的CRON或Windows下的任務(wù)計(jì)劃)只能精確到每分鐘執(zhí)行一次。

  事件的優(yōu)缺點(diǎn)

  優(yōu)點(diǎn): 一些對(duì)數(shù)據(jù)定時(shí)性操作不再依賴外部程序,而直接使用數(shù)據(jù)庫本身提供的功能。

  可以實(shí)現(xiàn)每秒鐘執(zhí)行一個(gè)任務(wù),這在一些對(duì)實(shí)時(shí)性要求較高的環(huán)境下就非常實(shí)用了。

  缺點(diǎn):定時(shí)觸發(fā),不可以調(diào)用。

  創(chuàng)建事件

  一條create event語句創(chuàng)建一個(gè)事件。每個(gè)事件由兩個(gè)主要部分組成,第一部分是事件調(diào)度(event schedule),表示事件何時(shí)啟動(dòng)以及按什么頻率啟動(dòng),第二部分是事件動(dòng)作(event action ),這是事件啟動(dòng)時(shí)執(zhí)行的代碼,事件的動(dòng)作包含一條SQL語句,它可能是一個(gè)簡單的insert或者update語句,也可以讓一個(gè)存儲(chǔ)過程或者benin...end語句塊,這兩種情況允許我們執(zhí)行多條SQL。

  一個(gè)事件可以是活動(dòng)(打開)的或停止(關(guān)閉)的,活動(dòng)意味著事件調(diào)度器檢查事件動(dòng)作是否必須調(diào)用,停止意味著事件的聲明存儲(chǔ)在目錄中,但調(diào)度器不會(huì)檢查它是否應(yīng)該調(diào)用。在一個(gè)事件創(chuàng)建之后,它立即變?yōu)榛顒?dòng)的,一個(gè)活動(dòng)的事件可以執(zhí)行一次或者多次。

  開啟事件

  在使用事件這個(gè)功能,首先要保證你的mysql的版本是5.1以上,然后還要查看你的mysql服務(wù)器上的事件是否開啟。

  查看事件是否開啟,使用如下命令查看:

  SHOW VARIABLES LIKE 'event_scheduler';

  通過動(dòng)態(tài)參數(shù)修改 SET GLOBAL event_scheduler = ON;

  更改完這個(gè)參數(shù)就立刻生效了。

  注意:還是要在my.ini 中添加event_scheduler=ON。因?yàn)槿绻麤]有添加的話,mysql重啟事件又會(huì)回到原來的狀態(tài)了。

關(guān)于Mysql數(shù)據(jù)庫中怎么創(chuàng)建一個(gè)事件問題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI