日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > 数据库 >内容正文

数据库

mysql设置定时任务

發(fā)布時間:2025/5/22 数据库 36 豆豆
生活随笔 收集整理的這篇文章主要介紹了 mysql设置定时任务 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

聯(lián)系我吧 http://qq.bishijie1999.top

mysql設(shè)置定時任務(wù)

一、

首先我們要開啟 mysql的定時策略
執(zhí)行

show variables like '%event_sche%';

如果數(shù)據(jù)為 off表示沒開啟 開啟

set global event_scheduler=1;

二、

創(chuàng)建procedure(存儲過程)

use test; delimiter // create procedure test_proce() begin insert into weuse(name,created_at,updated_at) values('hello',now(),now()); end// delimiter ;

上面的代碼說明:

  • use test; 這個誰都知道,使用某個數(shù)據(jù)庫,這里要強調(diào)的是存儲過程一定是對于某個數(shù)據(jù)庫而言的,所以必須要選中一個數(shù)據(jù)庫才能創(chuàng)建成功。
  • delimiter // 這個是將mysql中以;(分號)結(jié)尾的規(guī)定修改為以//(雙斜杠)為語句結(jié)束符,因為存儲過程里可以有多條sql
    語句,里面的sql語句都以;號結(jié)尾,如果回車了那么系統(tǒng)會當做sql語句直接執(zhí)行了,我們希望的是先定義這一系列sql語句而先不執(zhí)行,所以要改下操作結(jié)束符。當然你在改后一定要改回來,大家可以看到最后一行有對應(yīng)的修改回來的語句。
  • 下面的是一起輸入的,可以知道分別是創(chuàng)建存儲過程test_proce(),名稱可以隨便起的,然后是在begin
    –end之間是定義一系列sql語句的就可以了,記住最后end結(jié)尾要以之前修改后的結(jié)尾符結(jié)束。

設(shè)置定時任務(wù)

create event second_event on schedule every 1 second on completion preserve disable do call test_proce();

代碼說明:

  • 上面為整體代碼,敲完再寫分號 第一行create event
  • day_event是創(chuàng)建名為second_event的事件,注意此處沒有括號
  • 第二行是創(chuàng)建周期定時的規(guī)則,本處的意思是每秒鐘執(zhí)行一次 第三行on completion preserve
  • disable是表示創(chuàng)建后并不開始生效。 第四行do call
  • test_proce()是該event(事件)的操作內(nèi)容,表示調(diào)用我們剛剛創(chuàng)建的test_proce()存儲過程。

查看定時任務(wù)event(事件),可以查看本機所有的事件

SELECT event_name,event_definition,interval_value,interval_field,status FROM information_schema.EVENTS;

四、開啟已經(jīng)創(chuàng)建好的event(事件)

alter event second_event on completion preserve enable;//開啟定時任務(wù) alter event second_event on completion preserve disable;//關(guān)閉定時任務(wù)

五、常見周期定時規(guī)則

周期執(zhí)行–關(guān)鍵字 EVERY

單位有:second,minute,hour,day,week(周),quarter(季度),month,year
如:

on schedule every 1 second //每秒執(zhí)行1次 on schedule every 2 minute //每兩分鐘執(zhí)行1次 on schedule every 3 day //每3天執(zhí)行1次

在具體某個時間執(zhí)行–關(guān)鍵字 AT

如:

on schedule at current_timestamp()+interval 5 day //5天后執(zhí)行 on schedule at current_timestamp()+interval 10 minute //10分鐘后執(zhí)行 on schedule at '2016-10-01 21:50:00' //在2016年10月1日,晚上9點50執(zhí)行

在某個時間段執(zhí)行–關(guān)鍵字STARTS ENDS

如:

on schedule every 1 day starts current_timestamp()+interval 5 day ends current_timestamp()+interval 1 month //5天后開始每天都執(zhí)行執(zhí)行到下個月底 on schedule every 1 day ends current_timestamp()+interval 5 day //從現(xiàn)在起每天執(zhí)行,執(zhí)行5天

Event事件,可以查看,用sql命令

SELECT * FROM information_schema.EVENTS;//查看所有事件屬性 SELECT event_name,event_definition,interval_value,interval_field,status FROM information_schema.EVENTS;//查看主要幾個屬性

總結(jié)

以上是生活随笔為你收集整理的mysql设置定时任务的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。