当前位置:  开发笔记 > 数据库 > 正文

如何通过SQL将活动用户连接到postgreSQL数据库?

如何解决《如何通过SQL将活动用户连接到postgreSQL数据库?》经验,为你挑选了2个好方法。

如何通过SQL将活动用户连接到postgreSQL数据库?这可以是用户ID或用户数.



1> balexandre..:

(问题)你不知道这些信息

select*from pg_user ;

或使用视图pg_stat_activity:

select * from pg_stat_activity;

添加:

观点说:

每个服务器进程一行,显示数据库OID,数据库名称,进程ID,用户OID,用户名,当前查询,查询的等待状态,当前查询开始执行的时间,进程启动的时间以及客户端的地址和端口号.除非已关闭参数stats_command_string,否则报告当前查询数据的列是可用的.此外,只有在检查视图的用户是超级用户或与拥有报告的进程的用户相同时,这些列才可见.

你不能过滤并获得这些信息吗?这将是数据库中的当前用户,您可以使用开始执行时间来获取最近5分钟的所有查询,例如...

类似的东西.


@ mm2010:pg_stat_activity:仅限活跃用户.pg_user:列出所有用户
Downvoted,回答稍微徘徊并提供一些可能误导未来读者的信息,例如,pg_user对于查找连接到PostgreSQL数据库的活动用户没有用.
不,这是已知用户的列表,而不是当前连接的数量.

2> Sven Lilient..:

使用balexandre的信息:

SELECT usesysid, usename FROM pg_stat_activity;


您可以将`client_addr`添加到上述查询中以获取客户端的IP.
推荐阅读
手机用户2402852307
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有