相關文件 下載本手冊
PDF (美式信紙) - 39.9Mb
PDF (A4) - 40.0Mb
Man Pages (TGZ) - 258.5Kb
Man Pages (Zip) - 365.5Kb
Info (Gzip) - 4.0Mb
Info (Zip) - 4.0Mb


MySQL 8.4 參考手冊  /  ...  /  事件排程器狀態

27.4.5 事件排程器狀態

事件排程器會將因錯誤或警告而終止的事件執行資訊寫入 MySQL 伺服器的錯誤日誌。請參閱第 27.4.6 節,「事件排程器與 MySQL 權限」以取得範例。

若要取得事件排程器的狀態資訊以進行除錯和疑難排解,請執行mysqladmin debug (請參閱第 6.5.2 節,「mysqladmin — MySQL 伺服器管理程式」);執行此命令後,伺服器的錯誤日誌會包含與事件排程器相關的輸出,類似於此處顯示的內容

Events status:
LLA = Last Locked At  LUA = Last Unlocked At
WOC = Waiting On Condition  DL = Data Locked

Event scheduler status:
State      : INITIALIZED
Thread id  : 0
LLA        : n/a:0
LUA        : n/a:0
WOC        : NO
Workers    : 0
Executed   : 0
Data locked: NO

Event queue status:
Element count   : 0
Data locked     : NO
Attempting lock : NO
LLA             : init_queue:95
LUA             : init_queue:103
WOC             : NO
Next activation : never

在事件排程器執行的事件中發生的陳述式中,診斷訊息(不僅是錯誤,還有警告)會寫入錯誤日誌,以及在 Windows 上,寫入應用程式事件日誌。對於頻繁執行的事件,這可能會導致許多記錄訊息。例如,對於 SELECT ... INTO var_list 陳述式,如果查詢未傳回任何資料列,則會發生錯誤代碼 1329 的警告 (No data),且變數值保持不變。如果查詢傳回多個資料列,則會發生錯誤 1172 (Result consisted of more than one row)。對於任一種情況,您都可以透過宣告條件處理常式來避免記錄警告;請參閱第 15.6.7.2 節,「DECLARE ... HANDLER 陳述式」。對於可能擷取多個資料列的陳述式,另一個策略是使用 LIMIT 1 將結果集限制為單一資料列。