【问题标题】:MySQL - how to SHOW PROCESSLIST only with current user's processes?MySQL - 如何仅使用当前用户的进程显示 PROCESSLIST?
【发布时间】:2010-09-24 23:00:36
【问题描述】:

在 MySQL 5 中有没有办法只显示当前用户的进程(查询)?

用户拥有PROCESS权限,因此SHOW PROCESSLIST显示所有用户的运行进程。根据文档,SHOW PROCESSLIST 不允许使用任何类型的 WHERE 语法,我也没有设法将其变成子查询。

当然,我可以简单地发送查询,例如在 PHP 脚本中,并在循环中遍历结果,丢弃不属于我的所有内容,但这似乎效率很低。更改用户权限是不可行的。

还有其他方法吗?提前致谢。

【问题讨论】:

    标签: mysql


    【解决方案1】:

    如果用户没有PROCESS,那么SHOW PROCESSLIST将只显示自己的线程。

    【讨论】:

      【解决方案2】:

      如果您使用 MySQL 5.1.7 或更新版本,您可以使用 INFORMATION_SCHEMA 中的 PROCESSLIST 表。因此,您可以使用普通的SELECT 查询对其进行查询,并在WHERE 子句中应用过滤条件。

      此功能未在 MySQL 5.0 及更早版本中实现。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-06-17
        • 1970-01-01
        相关资源
        最近更新 更多