2014-01-23 28 views
0

我創建了以下事件,但由於某種原因,它沒有得到觸發:MySQL的事件沒有觸發

CREATE EVENT Del_logs 
ON SCHEDULE EVERY 1 HOUR 
DO 
    TRUNCATE TABLE security.errors; 

是否有任何日誌,我可以檢查,看看哪裏出了問題?

+0

你確定你的服務器是在同一個時區,你是誰?嘗試將開始日期設置爲2天前以查看。 –

+0

錯誤日誌文件通常是'/ var/log/mysqld.log',但是如果您位於託管系統上,則可能無法訪問它。並非所有託管系統都啓用了事件調度程序。你應該檢查你的ISP – 2014-01-23 23:36:28

+0

服務器是專用的,我有完全的root權限,它在同一個時區。這可能是MariaDB與事件不兼容的原因嗎? 錯誤日誌似乎是空的 – Cornwell

回答

6

它看起來像事件調度程序關閉。

  • 使用SHOW PROCESSLIST檢查是否啓用事件調度程序。如果它打開,您應該看到用戶「event_scheduler」的進程「Daemon」。
  • 使用

    SET GLOBAL event_scheduler = ON; 
    

    ,使調度,如果它目前尚未啓用。

  • 更多關於配置事件調度表中讀取here