查询SQL server 数据库连接数 并且断开连接

一个生产环境,一个线上的环境,在线上环境出现的数据问题在生产环境中没有出现,因此需要将线上的数据库还原到生产环境,但是每次还原的时候总是出现 辞数据库正在使用,无法还原,但是肉眼是看不到,所以需要查询出来数据库连接并且强制断开。

1、查询 SQL server 允许同时连接的用户的最大数

SELECT @@MAX_CONNECTIONS

2、查询指定数据库的当前连接信息

SELECT * FROM master.dbo.sysprocesses WHERE dbid IN 
(
   SELECT dbid FROM master.dbo.sysdatabases
   WHERE NAME='YourDataBaseName' --指定的数据库名字
)

或者

SELECT * FROM master.dbo.sysprocesses WHERE DB_NAME(dbid) = 'YourDataBaseName'

表master.dbo.sysprocesses中各字段意义 见 http://www.cnblogs.com/buaaboyi/archive/2010/04/06/1705142.html

3、强制关闭 SQL server 中数据库连接

kill 54 --54是spid  即 SQL Server session ID.
原文地址:https://www.cnblogs.com/see-you/p/3990497.html