有没有一些方便的方法来查看哪些用户正在访问MySQL数据库? 理想情况下,我会有一些这样的应用程序很容易,但其他的方法也可以。
如果没有标准的定义,我会接受“在最近30分钟内查询过数据库”。
查询如何:
SHOW FULL PROCESSLIST
这将显示您与数据库的连接,他们login的用户,连接的状态以及任何当前正在运行的命令。
从命令行(假设你的主目录下有一个.my.cnf文件夹),
echo Total\ Connections:; mysqladmin processlist | tail -n +4 | head -n -1 | grep Sleep | wc -l ; echo ; echo Current\ Users: ; mysqladmin processlist | tail -n +4 | head -n -1 | grep Sleep | awk '{print $4}' | sort | uniq
这给出了一个不错的用户和总连接打印输出。