日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網(wǎng)為廣大站長提供免費(fèi)收錄網(wǎng)站服務(wù),提交前請(qǐng)做好本站友鏈:【 網(wǎng)站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(wù)(50元/站),

點(diǎn)擊這里在線咨詢客服
新站提交
  • 網(wǎng)站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會(huì)員:747

無聊想給博客搞一個(gè)自動(dòng)發(fā)布文章功能,自動(dòng)發(fā)布方式有很多種,一般采用計(jì)劃任務(wù)的比較多,一次看到MySQL的事件調(diào)度,于是想就在mysql數(shù)據(jù)庫中進(jìn)行定時(shí)任務(wù)自動(dòng)修改要發(fā)布的文章就可以了。僅供研究測(cè)試,實(shí)際需要根據(jù)情況考慮用于生產(chǎn)環(huán)境中。

什么是mysql的事件調(diào)度器,來說說。

MySQL事件調(diào)度器

修改配置Mysql配置文件,在配置文件末尾添加event_scheduler = 1,然重啟mysql

MySQL從5.1開始支持Event功能,有點(diǎn)類似于MsSQL的Job,可以定時(shí)自動(dòng)執(zhí)行數(shù)據(jù)匯總。

CREATE EVENT [IF NOT EXISTS] event_name  
    ON SCHEDULE schedule  
    [ON COMPLETION [NOT] PRESERVE]  
    [ENABLE | DISABLE]  
    [COMMENT 'comment']  
    DO sql_statement;  
schedule:  
    AT timestamp [+ INTERVAL interval]  
  | EVERY interval [STARTS timestamp] [ENDS timestamp]  
interval:  
    quantity {YEAR | QUARTER | MONTH | DAY | HOUR | MINUTE |  
              WEEK | SECOND | YEAR_MONTH | DAY_HOUR | DAY_MINUTE |  
              DAY_SECOND | HOUR_MINUTE | HOUR_SECOND | MINUTE_SECOND}  

其中,event_name:定時(shí)器名,最大長度64個(gè)字符,若未指定,則默認(rèn)為當(dāng)前的MySQL用戶名(不區(qū)分大小寫);

schedule:限定執(zhí)行時(shí)間;

ON COMPLETION [NOT] PRESERVE:表示是否需要循環(huán)復(fù)用這個(gè)Event;

sql_statement:要執(zhí)行的SQL語句(也可以使用存儲(chǔ)過程代替?zhèn)鹘y(tǒng)的SQL語句);

comment:對(duì)該時(shí)間調(diào)度器的一個(gè)注釋,最大長度64個(gè)字符;

實(shí)現(xiàn)思路

  • 在linux上開啟mysql5.7定時(shí)任務(wù)設(shè)置
  • 創(chuàng)建發(fā)布文章存儲(chǔ)過程腳本
  • 創(chuàng)建定時(shí)任務(wù)

編寫Mysql存儲(chǔ)腳本

CREATE DEFINER=`root`@`localhost` PROCEDURE `blog`.`p_auto_publish`()
BEGIN
    update article a set a.state=1 where a.`timestamp` < current_timestamp and a.state=0;
END

博客文章,有state字段,如果為0是草稿狀態(tài)。存儲(chǔ)過程的意思,就是判斷當(dāng)時(shí)草稿文章的發(fā)布時(shí)間小于當(dāng)前時(shí)間,就更改state字段狀態(tài)為1,即發(fā)布狀態(tài)。

創(chuàng)建mysql定時(shí)事件任務(wù)

CREATE EVENT e_auto_publish
ON SCHEDULE EVERY 5 MINUTE
ON COMPLETION PRESERVE
DO 
CALL p_auto_publish();

我這里定義的是每5分鐘執(zhí)行一次發(fā)布文章的存儲(chǔ)過程。創(chuàng)建事件任務(wù)具體的語法具體參照上面的說明。好了,就這么多啦,大家可以自行研究,主要是一種嘗試。 覺得 迷神筆記 不錯(cuò),記得來一波關(guān)注哦。

分享到:
標(biāo)簽:定時(shí) mysql5
用戶無頭像

網(wǎng)友整理

注冊(cè)時(shí)間:

網(wǎng)站:5 個(gè)   小程序:0 個(gè)  文章:12 篇

  • 51998

    網(wǎng)站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會(huì)員

趕快注冊(cè)賬號(hào),推廣您的網(wǎng)站吧!
最新入駐小程序

數(shù)獨(dú)大挑戰(zhàn)2018-06-03

數(shù)獨(dú)一種數(shù)學(xué)游戲,玩家需要根據(jù)9

答題星2018-06-03

您可以通過答題星輕松地創(chuàng)建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學(xué)四六

運(yùn)動(dòng)步數(shù)有氧達(dá)人2018-06-03

記錄運(yùn)動(dòng)步數(shù),積累氧氣值。還可偷

每日養(yǎng)生app2018-06-03

每日養(yǎng)生,天天健康

體育訓(xùn)練成績?cè)u(píng)定2018-06-03

通用課目體育訓(xùn)練成績?cè)u(píng)定