MS SQL 如何自动手动关闭 客户端的连接

来源:百度知道 编辑:UC知道 时间:2024/06/14 09:35:56
管理--当前活动线程 里可以看到 有部分客户端连接在SQL服务器上。
我点 取消线程 没反应。点 发送消息 别人能收到。
有什么办法 可以强制结束此连接线程吗,或者哪里可以设置30分钟无反应就自动关闭连接!
主要是为了 解决ERP的同时在线用户限制问题,大家都登在里面不退,其他人登陆不进。
求高手指点

1\打开活动监视器,想踢哪个就右键--终止进程,你说的取消没反应时因为事务回滚是需要时间的,如果这个事务本来就进行了很长时间没结束,那回滚的时候也会很花时间的。

2\除了这种可视界面外,也可以用语句结束进程。
语句就非常高效了,除了某些超级事务外,别的都即时踢掉。

kill 进程号

查询进程号一般用系统存储过程,如sp_who
或者系统视图如
select distinct
program_name 应用程序
,hostname 主机名
,net_address 地址
,loginame 用户
,db_name(a.dbid) 数据库
,object_name(rsc_objid) as 表名
,spid as 进程
,status 进程类型
,cpu/1000 as 进程时间
,waittime/1000 已等待时间
,cmd as sql类型
,blocked as 堵塞进程
from
master..sysprocesses a,master..syslockinfo b
where b.req_spid=a.spid

然后看哪个不顺,就 kill spid就可以了。

分太少了点啊哥们,你在服务器上的进程管理器哪里有个用户的,看看那个不用的就踢出去,这是最笨的方法,还有一种就是更改会话时间,可以设成结束会话5分钟后断开,在终端服务上面有,具体的不记得了分太少记不起来了