在MySQL 5中有沒有辦法只顯示當前用戶的進程(查詢)?MySQL - 如何僅顯示當前用戶進程的PROCESSLIST?
用戶擁有PROCESS
權限,因此SHOW PROCESSLIST
顯示所有用戶的運行進程。根據文檔,SHOW PROCESSLIST
不允許任何種類的WHERE
語法,我也沒有設法將它變成子查詢。
當然,我可以簡單地發送查詢,例如,在一個PHP腳本中,並在循環中查看結果,丟棄所有不屬於我的內容,但效率相當低。更改用戶權限並不可行。
還有其他方法嗎?提前致謝。
在MySQL 5中有沒有辦法只顯示當前用戶的進程(查詢)?MySQL - 如何僅顯示當前用戶進程的PROCESSLIST?
用戶擁有PROCESS
權限,因此SHOW PROCESSLIST
顯示所有用戶的運行進程。根據文檔,SHOW PROCESSLIST
不允許任何種類的WHERE
語法,我也沒有設法將它變成子查詢。
當然,我可以簡單地發送查詢,例如,在一個PHP腳本中,並在循環中查看結果,丟棄所有不屬於我的內容,但效率相當低。更改用戶權限並不可行。
還有其他方法嗎?提前致謝。
如果您使用MySQL 5.1.7或更新版本,則可以使用INFORMATION_SCHEMA中的PROCESSLIST表。因此,您可以使用普通的SELECT
查詢來查詢它,並在WHERE
子句中應用過濾條件。
此功能在MySQL 5.0及之前版本中未實現。
如果用戶沒有PROCESS
,那麼SHOW PROCESSLIST
將只顯示他們自己的線程。
正是我在找的,謝謝。 – Piskvor 2008-12-02 16:16:46