欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

MySQL Event Scheduler(事件調(diào)度器)

 更新時(shí)間:2010年06月21日 12:29:10   作者:  
事件調(diào)度器是在 MySQL 5.1 中新增的另一個(gè)特色功能,可以作為定時(shí)任務(wù)調(diào)度器,取代部分原先只能用操作系統(tǒng)任務(wù)調(diào)度器才能完成的定時(shí)功能。
一、概述
  事件調(diào)度器是在 MySQL 5.1 中新增的另一個(gè)特色功能,可以作為定時(shí)任務(wù)調(diào)度器,取代部分原先只能用操作系統(tǒng)任務(wù)調(diào)度器才能完成的定時(shí)功>能。例如,Linux 中的 crontabe 只能精確到每分鐘執(zhí)行一次,而 MySQL 的事件調(diào)度器則可以實(shí)現(xiàn)每秒鐘執(zhí)行一個(gè)任務(wù),這在一些對(duì)實(shí)時(shí)性要>求較高的環(huán)境下就非常實(shí)用了。
  事件調(diào)度器是定時(shí)觸發(fā)執(zhí)行的,在這個(gè)角度上也可以稱作是"臨時(shí)的觸發(fā)器"。觸發(fā)器只是針對(duì)某個(gè)表產(chǎn)生的事件執(zhí)行一些語(yǔ)句,而事件調(diào)度器則是在某一個(gè)(間隔)時(shí)間執(zhí)行一些語(yǔ)句。事件是由一個(gè)特定的線程來(lái)管理的,也就是所謂的"事件調(diào)度器"。啟用事件調(diào)度器后,擁有 SUPER 權(quán)限的賬戶執(zhí)行 SHOW PROCESSLIST 就可以看到這個(gè)線程了。通過(guò)設(shè)定全局變量event_scheduler 的值即可動(dòng)態(tài)的控制事件調(diào)度器是否啟用。
復(fù)制代碼 代碼如下:

(root:localhost:)test> SET GLOBAL event_scheduler = ON;
(root:localhost:)test> show processlist\G
*************************** 4. row ***************************
Id: 46147
User: event_scheduler
Host: localhost
db: NULL
Command: Daemon
Time: 1
State: Waiting on empty queue
Info: NULL

  如上,該線程的所有者是 event_scheduler。
  二、應(yīng)用案例
  本案例是利用 event scheduler 的特性,每秒鐘調(diào)用一次存儲(chǔ)過(guò)程,用于判斷 SLAVE 是否正常運(yùn)行,如果發(fā)現(xiàn) SLAVE 關(guān)閉了,忽略 0 次錯(cuò)誤,然后重新啟動(dòng) SLAVE。
  首先創(chuàng)建存儲(chǔ)過(guò)程
delimiter //
復(fù)制代碼 代碼如下:

create procedure `Slave_Monitor`()
begin
SELECT VARIABLE_VALUE INTO @SLAVE_STATUS
FROM information_schema.GLOBAL_STATUS
WHERE VARIABLE_NAME='SLAVE_RUNNING';
IF ('ON' != @SLAVE_STATUS) THEN
SET GLOBAL SQL_SLAVE_SKIP_COUNTER=0;
SLAVE START;
END IF;
end; //
delimiter ;

  由于存儲(chǔ)過(guò)程中無(wú)法調(diào)用類似 SHOW SLAVE STATUS 這樣的語(yǔ)句,因此無(wú)法得到確切的復(fù)制錯(cuò)誤信息和錯(cuò)誤代碼,不能進(jìn)一步的處理 SLAVE 停止的各種情況。
  接著,創(chuàng)建任務(wù)
復(fù)制代碼 代碼如下:

CREATE EVENT IF NOT EXISTS `Slave_Monitor`
ON SCHEDULE EVERY 5 SECOND
ON COMPLETION PRESERVE
DO
CALL Slave_Monitor();

  創(chuàng)建了一個(gè)任務(wù),每 5秒鐘 執(zhí)行一次,任務(wù)結(jié)束后依舊保留該任務(wù),而不是刪除。當(dāng)然了,在本例中的任務(wù)不會(huì)結(jié)束,除非將它手動(dòng)禁止了。
  如果在運(yùn)行中想要臨時(shí)關(guān)閉一下某個(gè)任務(wù),執(zhí)行 ALTER EVENT 語(yǔ)句即可:
復(fù)制代碼 代碼如下:

(root:localhost:)test> alter event `Slave_Monitor` ON
COMPLETION PRESERVE DISABLE;
(root:localhost:)test> alter event `Slave_Monitor` ON
COMPLETION PRESERVE ENABLE;

相關(guān)文章

  • MySQL MyISAM 與InnoDB 的區(qū)別

    MySQL MyISAM 與InnoDB 的區(qū)別

    這篇文章主要介紹了MySQL MyISAM與InnoDB 的區(qū)別,幫助大家更好的理解和使用MySQL的存儲(chǔ)引擎,感興趣的朋友可以了解下
    2020-09-09
  • MySQL數(shù)據(jù)庫(kù)遷移快速導(dǎo)出導(dǎo)入大量數(shù)據(jù)

    MySQL數(shù)據(jù)庫(kù)遷移快速導(dǎo)出導(dǎo)入大量數(shù)據(jù)

    今天小編就為大家分享一篇關(guān)于MySQL數(shù)據(jù)庫(kù)遷移快速導(dǎo)出導(dǎo)入大量數(shù)據(jù),小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧
    2019-03-03
  • 關(guān)于MySQL中的 like操作符詳情

    關(guān)于MySQL中的 like操作符詳情

    這篇文章主要介紹了MySQL之like操作符,當(dāng)對(duì)未知或者說(shuō)知道某一部分的值進(jìn)行過(guò)濾時(shí),可以使用like操作符;like操作符用于模糊匹配。下面我們一起進(jìn)入文章看看文章是我詳細(xì)內(nèi)容
    2021-11-11
  • MySQL中int?(10)?和?int?(11)?的區(qū)別

    MySQL中int?(10)?和?int?(11)?的區(qū)別

    這篇文章主要介紹了MySQL中int?(10)?和?int?(11)?的區(qū)別,根據(jù)mysql?中整數(shù)數(shù)據(jù)類型、不同類型的取值范圍、不同數(shù)據(jù)類型的默認(rèn)顯示寬度展開(kāi)對(duì)int的介紹,需要的朋友可以參考一下
    2022-01-01
  • MySQL基礎(chǔ)教程之事務(wù)異常情況

    MySQL基礎(chǔ)教程之事務(wù)異常情況

    事務(wù)(Transaction)是訪問(wèn)和更新數(shù)據(jù)庫(kù)的程序執(zhí)行單元;事務(wù)中可能包含一個(gè)或多個(gè)sql語(yǔ)句,這些語(yǔ)句要么都執(zhí)行,要么都不執(zhí)行,下面這篇文章主要給大家介紹了關(guān)于MySQL基礎(chǔ)教程之事務(wù)異常情況的相關(guān)資料,需要的朋友可以參考下
    2022-10-10
  • MySQL中rank() over、dense_rank() over、row_number() over用法介紹

    MySQL中rank() over、dense_rank() over、row_number()&n

    本文主要介紹了MySQL中rank() over、dense_rank() over、row_number() over用法介紹,文中通過(guò)示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2022-03-03
  • MySQL存儲(chǔ)數(shù)據(jù)亂碼的問(wèn)題解析

    MySQL存儲(chǔ)數(shù)據(jù)亂碼的問(wèn)題解析

    這篇文章主要介紹了MySQL存儲(chǔ)數(shù)據(jù)亂碼的問(wèn)題解析,作者從實(shí)際使用中的多個(gè)方面定位其原因然后解決,需要的朋友可以參考下
    2015-05-05
  • mysql存儲(chǔ)過(guò)程之游標(biāo)(DECLARE)原理與用法詳解

    mysql存儲(chǔ)過(guò)程之游標(biāo)(DECLARE)原理與用法詳解

    這篇文章主要介紹了mysql存儲(chǔ)過(guò)程之游標(biāo)(DECLARE)原理與用法,結(jié)合實(shí)例形式詳細(xì)分析了mysql存儲(chǔ)過(guò)程游標(biāo)(DECLARE)的基本功能、原理、使用方法及操作注意事項(xiàng),需要的朋友可以參考下
    2019-12-12
  • MySQL 索引優(yōu)化案例

    MySQL 索引優(yōu)化案例

    這篇文章主要介紹了MySQL 索引優(yōu)化案例,文章圍繞主題展開(kāi)詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下,希望對(duì)你的學(xué)習(xí)有所幫助
    2022-08-08
  • PHP mysqli擴(kuò)展庫(kù) 預(yù)處理技術(shù)的使用分析

    PHP mysqli擴(kuò)展庫(kù) 預(yù)處理技術(shù)的使用分析

    本篇文章,介紹了PHP mysqli擴(kuò)展庫(kù) 預(yù)處理技術(shù)的使用分析。需要的朋友參考下
    2013-05-05

最新評(píng)論