sqlserver 檢視並關閉到資料庫的連線

2021-10-08 12:31:02 字數 1842 閱讀 5812

環境:

如何檢視到某個資料庫的連線?

在master資料庫的檢視sysprocesses記錄著所有有效的連線。

我們可以使用如下命令檢視到test2資料庫的連線:

select spid,

*from sysprocesses where dbid=db_id(

'test2'

)

查詢結果如下圖:

資料庫連線的唯一標誌?

每個資料庫連線都有乙個唯一的標誌,它就是spid,在上面的查詢結果中,我們可以看到。

怎麼檢視當前連線的spid?

使用下面的sql:

select @@spid
如何關閉指定的連線?

找到資料庫連線spid,然後執行kill spid,如下面的語句:

kill

51

執行完後,你就發現那個鏈結已經中斷了。

如何批量關閉所有的指定資料庫的所有連線(注意:如果連線到資料庫test2,然後執行殺死所有到資料庫test2的連線,那麼不能殺死當前的連線)?

我們可以使用如下儲存過程:

create

proc usp_killconnect(

@dbname

varchar(20

))asbegin

declare

@sql nvarchar(

500)

,@temp

varchar

(1000

)declare

@spid

intset

@sql

='declare getspid cursor for

select spid from sysprocesses where dbid=db_id('''+

@dbname+''

') and spid > 50 and spid <> @@spid'

exec

(@sql

)open getspid

fetch

next

from getspid into

@spid

while @@fetch_status

<>-1

begin

set@temp

='kill '

+rtrim(

@spid

)exec

(@temp

)fetch

next

from getspid into

@spid

endclose getspid

deallocate getspid

end

使用時:

exec usp_killconnect 'test2'

ubuntu下檢視並關閉程序

主要參考文章 檢視當前系統下的程序命令 ps 可以使用命令 ps help進行幫助 ubuntu,顯示埠占用,顯示正在執行的程式,以及強制關閉乙個程序 1.顯示占用某個埠的程式 code lsof i 80 lsof i 5000 2.顯示某個程式是否在執行,檢視某個執行的程式 code ps au...

檢視SELinux狀態並關閉SELinux

selinux security enhanced linux 是linux上最傑出的新安全子系統。在linux核心級別上提供了乙個靈活的強制訪問控制系統 mac 這個強制訪問控制系統是建立在自由訪問控制系統 dac 之上的。usr sbin sestatus 如果selinux status引數為...

Linux命令檢視埠並關閉它

主要 color red lsof i port kill 9 pid color 可以通過 netstat anp 來檢視哪些埠被開啟。注 加引數 n 會將應用程式轉為埠顯示,即數字格式的位址,如 nfs 2049,ftp 21,因此可以開啟兩個終端,一一對應一下程式所對應的埠號 然後可以通過 l...