【问题标题】:how to find number of open jdbc connections to sql server如何查找到 sql server 的打开 jdbc 连接数
【发布时间】:2014-01-22 05:37:35
【问题描述】:

在我的应用程序运行的任何时间点,我都想知道有多少打开的 jdbc 连接 (SQL Server)

【问题讨论】:

    标签: sql sql-server jdbc


    【解决方案1】:

    试试这个:这将为您提供所有当前进程:

    USE master;
    GO
    EXEC sp_who;
    GO
    

    请查看here了解更多信息。

    【讨论】:

      【解决方案2】:

      试试这个:

      SELECT 
        DB_NAME(dbid) as DBName, 
        COUNT(dbid) as NumberOfConnections,
        loginame as LoginName,
        program_name as 'Program Name'
      FROM
        sys.sysprocesses
      WHERE 
        dbid > 0 AND program_name LIKE '%jdbc%'
      GROUP BY 
        dbid, loginame,program_name
      

      上面将为您提供每个数据库的 JDBC 连接数。

      如果您只想要总数,请使用它:

      SELECT 
        COUNT(dbid) as NumberOfConnections
      FROM
        sys.sysprocesses
      WHERE 
        dbid > 0 AND program_name LIKE '%jdbc%'
      

      【讨论】:

      • 这仅在程序名称包含字符串“jdbc”时才有效。 JDBC 客户端应用程序可以使用任何名称来标识自己。
      • @Ralf 通常官方的 JDBC 驱动程序会被正确识别。将返回 Microsoft JDBC Driver for SQL Server 之类的内容
      • 我不知道 MS 驱动程序的默认值。我们总是设置属性applicationName 以便能够识别正在连接的应用程序。 i-Net Merlia 驱动程序的默认值为“i-Net Merlia”作为应用程序名称。
      猜你喜欢
      • 1970-01-01
      • 2014-12-01
      • 2014-03-03
      • 1970-01-01
      • 1970-01-01
      • 2013-04-13
      • 2017-10-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多