在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