mysql事件是根據指定時間表執行的任務。 因此mysql事件稱為計畫事件。mysql事件是包含乙個或多個sql語句的命名物件。 它們儲存在資料庫中並以乙個或多個時間間隔執行。例如可以建立乙個事件來優化資料庫中的所有表,該事件在每個星期日的5:00 am執行。
mysql事件也稱為「時間觸發器」,因為它們是由時間觸發的,而不是由dml事件(如常規觸發器)觸發的。 mysql事件類似於linux上的cronjob或windows中的任務計畫程式。mysqlevent scheduler管理事件的計畫和執行。mysql事件在許多情況下非常有用,例如優化資料庫表,清理日誌,歸檔資料或 在非高峰時間生成複雜的報告。
簡單理解,事件的**相當於操作者規定乙個任務,然後讓任務去執行。事件**包括兩部分,乙個是安排日程,乙個是去執行的內容。
事件基礎**:
create evevt event _name 建立事件名字
on schedule 在什麼什麼時間
at 選擇一次性工作還是反覆工作
do這裡的時間表可以分配各種設定,例如
在特定日期/時間執行一次:
位於「 yyyy-mm-dd hh:mm.ss」
例如 在『2011-06-01 02:00.00』
經過特定時間後執行一次:
在current_timestamp + interval n [hour | month | week | day | minute]
例如 current_timestamp +間隔1天
永遠以特定間隔執行:
每n [小時|月|周|天|分鐘]
例如 每1天
在特定時期內以特定間隔執行:
每n [hour | month | week | day | minute]開始日期結束日期
例如 每1天的開始時間current_timestamp +間隔1周的結束時間「 2012-01-01 00:00.00」
mysql事件排程程式配置: mysql使用乙個稱為事件排程程式執行緒的特殊執行緒來執行所有排程的事件。 通過執行show processlist命令來檢視事件排程程式執行緒的狀態:
如果未啟用事件排程程式,則可以將event_scheduler系統變數設定為啟用並啟動它:
再次執行show processlist命令以檢視事件排程程式執行緒的狀態:
要禁用和停止事件排程程式執行緒,請將event_scheduler系統變數設定為off:
建立新的mysql事件
create event語句建立乙個新事件。 這是create event語句的基本語法:
createevent [ifnot exist] event_name
on schedule schedule
doevent_body
使用以下語法:首先,指定要建立create event關鍵字的事件的名稱。 事件名稱在同一資料庫中必須唯一。其次,在on schedule關鍵字之後指定時間表。
如果事件是一次性事件,請使用語法:at timestamp [+ interval]
如果該事件是重**生的事件,請使用every子句:every interval starts timestamp [+interval] ends timestamp [+interval]
第三,將sql語句放在do關鍵字之後。 可以在事件主體內呼叫儲存過程。 如果有復合語句,則可以將它們包裝在begin end塊中。
栗子:首先建立乙個**:
第二步,建立事件:
第三步,檢視事件執**況:
因為事件過期後會自動刪除該事件。 在一次性事件的情況下,在執行完成後過期。要在事件過期後保留事件,請使用on completion preserve子句。
以下**是建立**後一分鐘後開始執行**,且執行結果保留:
再次檢視運**況:
檢視事件:
建立重複事件示例
以下語句建立乙個重複事件,該事件每分鐘執行一次,並在其建立時間後的1小時內過期:
使用starts和ends子句來定義事件的有效期限。 可以通過等待幾分鐘並檢查訊息表來測試此重**生的事件。
mysql drop event語句
要刪除現有事件,使用drop event語句:
drop event [if exist] event_name;
例如,要刪除test_event_03事件,使用語句:
dropeventif exist test_event_03;
參考資料: event scheduler overviewdev.mysql.com to create scheduled events in mysql databaseswww.sitepoint.com
uma是什麼意思 UMA是什麼意思?
展開全部 uma 不明生物 是636f707962616964757a686964616f31333431376537動畫 進化戰記 betterman 中的一類人造怪物的統稱,是生命工學食料研究所 b.p.l.所長梅崎博士製造出來 協助他利用阿尼瑪斯之花 大量製造蛋白質 具有驚人攻擊性的怪物。阿拉...
是什麼意思?
meta是html中的元標籤,其中包含了對應html的相關資訊,客戶端瀏覽器或伺服器端的程式會根據這些資訊進行處理。http equiv類似於http的頭部協議,它回應給瀏覽器一些有用的資訊,以幫助正確和精確地顯示網頁內容。content 內容型別 重要!這個網頁的格式是文字的,網頁模式 chars...
In 是什麼意思
函式引數型別前 in 代表什麼 在visual c 中屬於sal批註,是為了編譯系統在分析 時發現缺陷用的 表示是乙個輸入引數。可以定義乙個 in 的巨集,這個巨集什麼都不做,就是形如這樣的。define in void fun int in x 等同於 void fun int x 但是他給出了引...