1、首先你可以telnet到此主机上(不管你用哪种方法),当然如果能直接操作机器更好,不过直接操作就不必用命令行了,那当然是知道机器超级管理员的密码的情况下,可以使用OpenTelnet来打开远程服务器的Telnet端口。
2Telnet上去后, 先看登陆的用户:
输入命令:query user
系统返回:
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
administrator console   0
运行中 . 2004-10-09 15:37
user1 UserMachine1   1
运行中 . 2004-10-09 15:37
user2                 12
已断开 2004-10-09 15:37
此时可以看出的可能根我们的不一样,根据具体情况而定。
看到吗? ID 0 的用户是本地登陆的,ID 1 ID 123389登陆的用户,前者在运行中,后者已经断开了,但是断开了仍然占用系统资源和通道,我们要把它踢掉。如下进行操作即可。
输入命令:logoff  12
C:\>query user //
再看看
USERNAME SESSIONNAME ID STATE IDLE TIME LOGON TIME
administrator console 0
运行中 . 2004-10-09 15:37
user1 UserMachine1   1
运行中 . 2004-10-09 15:37
 
3、如果服务器关闭了telnet功能(这是默认的),还可以通过SqlServerxp_cmdshell扩展存储过程,使用格式:master.dbo.xp_cmdshell '命令内容',其余可参考第二步。此方式要求有访问xp_cmdshell的权限上面的解决办法基本没有用 后来我用 服务器终端服务器超出最大允许连接数时,以前考虑用冷启动服务器,但这样必须跑一趟机房,最近发现最好的办法就是在“运行”命令行里输入:mstsc /console /v:你的服务器IP:远程端口,测试有效。