成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

MySQL 事件調度器示例演示

數據庫 MySQL
以下的文章主要是對MySQL 事件調度器(Event Scheduler)的實際應用的描述,本文是以示例演示的方式來引出其實際操作。

我們大家都知道MySQL 事件調度器是在 MySQL 5.1 中新生的一個較為特殊的功能,其可以作為定時任務調度器,來取代部分原先只能用操作系統任務調度器才能完成的定時功能。望以下的文章會給你提供更全面的知識。

一、概述

事件調度器是在 MySQL 5.1 中新增的另一個特色功能,可以作為定時任務調度器,取代部分原先只能用操作系統任務調度器才能完成的定時功>能。例如,Linux 中的 crontabe 只能精確到每分鐘執行一次,而 MySQL 事件調度器則可以實現每秒鐘執行一個任務,這在一些對實時性要>求較高的環境下就非常實用了。

事件調度器是定時觸發執行的,在這個角度上也可以稱作是"臨時的觸發器"。觸發器只是針對某個表產生的事件執行一些語句,而事件調度器則是在某一個(間隔)時間執行一些語句。事件是由一個特定的線程來管理的,也就是所謂的"事件調度器"。啟用事件調度器后,擁有 SUPER 權限的賬戶執行 SHOW PROCESSLIST 就可以看到這個線程了。通過設定全局變量event_scheduler 的值即可動態的控制MySQL 事件調度器是否啟用。

  1. (root:localhost:)test> SET GLOBAL event_scheduler = ON;   
  2. (root:localhost:)test> show processlist\G  

4. row

  1. Id: 46147   
  2. User: event_scheduler   
  3. Host: localhost   
  4. db: NULL   
  5. Command: Daemon   
  6. Time: 1   
  7. State: Waiting on empty queue   
  8. Info: NULL 

 

如上,該線程的所有者是 event_scheduler。

二、MySQL 事件調度器的應用案例

本案例是利用 event scheduler 的特性,每秒鐘調用一次存儲過程,用于判斷 SLAVE 是否正常運行,如果發現 SLAVE 關閉了,忽略 0 次錯誤,然后重新啟動 SLAVE。

首先創建存儲過程

 

  1. delimiter //   
  2. create procedure `Slave_Monitor`()   
  3. begin  
  4. SELECT VARIABLE_VALUE INTO @SLAVE_STATUS   
  5. FROM information_schema.GLOBAL_STATUS   
  6. WHERE VARIABLE_NAME='SLAVE_RUNNING';  
  7. IF ('ON' != @SLAVE_STATUS) THEN   
  8. SET GLOBAL SQL_SLAVE_SKIP_COUNTER=0;   
  9. SLAVE START;   
  10. END IF;  
  11. end; //   
  12. delimiter ;  

 

由于存儲過程中無法調用類似 SHOW SLAVE STATUS 這樣的語句,因此無法得到確切的復制錯誤信息和錯誤代碼,不能進一步的處理 SLAVE 停止的各種情況。

接著,創建任務

 

  1. CREATE EVENT IF NOT EXISTS `Slave_Monitor`   
  2. ON SCHEDULE EVERY 5 SECOND   
  3. ON COMPLETION PRESERVE   
  4. DO   
  5. CALL Slave_Monitor(); 

創建了一個任務,每 5秒鐘 執行一次,任務結束后依舊保留該任務,而不是刪除。當然了,在本例中的任務不會結束,除非將它手動禁止了。

如果在運行中想要臨時關閉一下某個任務,執行 ALTER EVENT 語句即可:

 

  1. (root:localhost:)test> alter event `Slave_Monitor` ON   
  2. COMPLETION PRESERVE DISABLE;   
  3. (root:localhost:)test> alter event `Slave_Monitor` ON   
  4. COMPLETION PRESERVE ENABLE; 

以上的相關內容就是對MySQL 事件調度器(Event Scheduler) 的介紹,望你能有所收獲。

【編輯推薦】

  1. Ubuntu MySQL設置同步服務器
  2. Ubuntu mysql可以把data防止到內存盤中
  3. CentOS系統MySQL優化詳解
  4. CentOS系統5編譯安裝mysql-4.1.22
  5. CentOS系統操作mysql的常用命令
責任編輯:佚名 來源: cnblogs
相關推薦

2010-05-24 13:04:55

MySQL 事件調度器

2010-06-04 14:32:34

MySQL 觸發器in

2010-05-31 18:06:07

MySQL 觸發器

2010-05-26 17:57:44

MySQL 觸發器

2009-08-06 16:18:38

C#調用SQL存儲過程

2010-07-20 08:48:14

SQL Server

2009-11-03 11:06:40

VB.NET事件

2009-11-27 15:13:00

PHP靜態變量stat

2011-01-21 07:36:00

LinuxBFSCFS

2024-02-21 12:18:00

Java虛擬機JVM

2010-06-09 14:39:58

2010-10-12 09:41:26

mysql觸發器

2017-07-19 15:19:19

數據庫DB分庫實施策略

2021-05-12 14:40:32

模型人工智能 PyTorch

2011-01-13 13:59:14

2023-11-20 22:55:00

Goroutine調度器

2023-04-17 08:13:13

KubernetesPod

2021-01-29 08:22:03

調度器Yarn架構

2010-05-27 09:38:59

MySQL Grant

2010-05-18 09:02:55

MySQL條件查詢
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 中文字幕 亚洲一区 | 亚洲精品二区 | 欧美日批 | 免费v片| 国产欧美精品一区二区三区 | 亚洲精品黄色 | 亚洲精品乱码久久久久久蜜桃91 | 国产精品永久久久久久久www | 91在线观看| 欧美精品一二区 | 有码一区| 国产国拍亚洲精品av | 日本啊v在线 | 韩日av在线 | 午夜电影日韩 | 在线亚洲欧美 | 日韩中字幕 | 中文字幕亚洲视频 | 午夜免费网站 | 欧美一区精品 | 伊人色综合久久久天天蜜桃 | 久久99深爱久久99精品 | 日本韩国欧美在线观看 | 国产激情一区二区三区 | 91精品国产综合久久久久久丝袜 | 午夜精品视频在线观看 | 亚洲免费在线 | 大陆一级毛片免费视频观看 | 欧美一区二区在线观看 | 黄色毛片网站在线观看 | 91视视频在线观看入口直接观看 | 日本字幕在线观看 | 欧美一级淫片免费视频黄 | 人人天天操 | 亚洲精品视频在线播放 | 一区二区在线不卡 | 超碰97免费在线 | 久久视频免费看 | 亚洲一区中文字幕 | 婷婷亚洲综合 | 99精品国产在热久久 |