如何查询远程连接至SQL Server及MySQL Server的设备数量
没问题,这两个数据库的远程连接设备数量查询方法我都整理好了,直接看下面的操作就行:
查询SQL Server远程连接设备数量
要统计当前远程连接到SQL Server的设备数量,最直接的方式是利用系统动态管理视图sys.dm_exec_connections,它会返回所有活跃的数据库连接信息。你可以执行下面的查询语句:
SELECT COUNT(DISTINCT client_net_address) AS remote_device_count FROM sys.dm_exec_connections WHERE client_net_address IS NOT NULL AND client_net_address NOT IN ('127.0.0.1', '::1')
client_net_address字段记录了发起连接的客户端IP地址DISTINCT用来避免同一设备多次连接被重复计数- 过滤条件排除了本地回环地址(127.0.0.1和IPv6的::1),确保只统计远程设备
查询MySQL Server远程连接设备数量
对于MySQL,你可以通过查询information_schema.processlist表来获取连接信息,处理一下host字段就能得到远程设备数量:
SELECT COUNT(DISTINCT SUBSTRING_INDEX(host, ':', 1)) AS remote_device_count FROM information_schema.processlist WHERE host NOT LIKE 'localhost%' AND host NOT LIKE '127.0.0.1%' AND host NOT LIKE '::1%';
- MySQL的
host字段格式是客户端IP:端口号,用SUBSTRING_INDEX(host, ':', 1)可以提取出纯IP地址 DISTINCT确保同一设备的多个连接只算一次- 过滤条件排除了本地连接相关的host值,只统计远程设备
另外,如果你只是想快速查看,也可以执行SHOW PROCESSLIST;命令,然后手动数一下非本地的IP数量,但上面的查询语句更适合自动化统计或者批量查询场景。
内容的提问来源于stack exchange,提问作者الكوما ندوز
相关产品推荐
相关产品推荐

