KILL KILL - 北京怡康軟件科技有限公司 資源網(wǎng) "/>

亚洲av色香蕉一区二区三区,十四以下岁毛片带血a级,亚洲 校园 欧美 国产 另类,亚洲av日韩av一区谷露,色欲av无码一区二区三区

  • 相關(guān)軟件
    >KILL 創(chuàng)建者:webmaster 更新時(shí)間:2006-02-16 15:51

    根據(jù)系統(tǒng)進(jìn)程 ID (SPID) 終止用戶(hù)進(jìn)程。如果指定的 SPID 或 UOW 有許多工作要取消,KILL 命令可能需要一些時(shí)間來(lái)完成,特別是在涉及回滾長(zhǎng)事務(wù)時(shí)。



    在 Microsoft® SQL Server™ 2000 中,KILL 命令可用來(lái)終止正常連接,這將在內(nèi)部終止與給定 SPID 關(guān)聯(lián)的事務(wù)。另外,在使用 Microsoft 分布式事務(wù)處理協(xié)調(diào)器 (MS DTC) 時(shí),該命令也可用于終止所有孤立的分布式事務(wù)。當(dāng)分布式事務(wù)未與任何當(dāng)前 SPID 關(guān)聯(lián)時(shí),即為孤立的。



    語(yǔ)法


    KILL {spid | UOW} [WITH STATUSONLY]



    參數(shù)


    spid



    是要終止進(jìn)程的系統(tǒng)進(jìn)程 ID (SPID)。SPID 值是當(dāng)用戶(hù)進(jìn)行連接時(shí)指派給該連接的一個(gè)唯一的整數(shù) (smallint),但該指派不是永久的。



    使用 KILL spid 終止與給定 SPID 相關(guān)聯(lián)的常規(guī)非分布式和分布式事務(wù)。



    UOW



    標(biāo)識(shí) DTC 事務(wù)的工作單元 ID (UOW)。UOW 是一個(gè)字符串,可從 syslockinfo 表中獲得,該表把 UOW 賦予每個(gè)由 DTC 事務(wù)控制的鎖。UOW 也可從錯(cuò)誤日志中獲得,或通過(guò) DTC 監(jiān)視器獲得。有關(guān)監(jiān)視分布式事務(wù)的更多信息,請(qǐng)參見(jiàn)"MS DTC 用戶(hù)手冊(cè)"。



    使用 KILL UOW 終止孤立的 DTC 事務(wù),這些事務(wù)不與任何真實(shí)的 SPID 關(guān)聯(lián),而是手工與 SPID = '-2' 關(guān)聯(lián)。有關(guān) SPID = '-2' 的更多信息,請(qǐng)參見(jiàn)本主題后面的注釋部分。



    WITH STATUSONLY



    指定 SQL Server 生成關(guān)于正在回滾的給定 spidUOW 的進(jìn)度報(bào)告。帶 WITH STATUSONLY 的 KILL 命令不終止或回滾 spidUOW,而只顯示當(dāng)前進(jìn)度報(bào)告。



    若要使帶 WITH STATUSONLY 選項(xiàng)的 KILL 命令成功地生成報(bào)告,spidUOW 當(dāng)前必須處于回滾狀態(tài)。進(jìn)度報(bào)告指出已完成的回滾量(按百分比計(jì)算)和估計(jì)的剩余時(shí)間(以秒為單位),格式如下:



    Spid|UOW <xxx>: Transaction rollback in progress. Estimated rollback completion: yy% Estimated time left: zz seconds.


    如果執(zhí)行帶 WITH STATUSONLY 選項(xiàng)的 KILL 命令時(shí) spidUOW 回滾已經(jīng)結(jié)束,或者如果沒(méi)有 spidUOW 正在回滾,帶 WITH STATUSONLY 的 KILL 命令將返回下列錯(cuò)誤:



    Status report cannot be obtained. KILL/ROLLBACK operator for Process ID|UOW <xxx> is not in progress.


    執(zhí)行兩次不帶 WITH STATUSONLY 選項(xiàng)的 KILL spid|UOW 命令可得到同樣的狀態(tài)報(bào)告;但不建議這樣做。第二次執(zhí)行命令可能會(huì)終止已指派給釋放的 SPID 的新進(jìn)程。



    注釋


    KILL 命令通常用于終止這樣一些進(jìn)程,它們鎖住了其它重要進(jìn)程,或者正在執(zhí)行一個(gè)查詢(xún),而該查詢(xún)正在使用必需的系統(tǒng)資源。系統(tǒng)進(jìn)程和運(yùn)行擴(kuò)展存儲(chǔ)過(guò)程的進(jìn)程不能被終止。



    應(yīng)當(dāng)小心使用 KILL 命令,特別是正在運(yùn)行重要進(jìn)程時(shí)。用戶(hù)不能取消自己的進(jìn)程。其它不能取消的進(jìn)程包括:


    • AWAITING COMMAND



    • CHECKPOINT SLEEP



    • LAZY WRITER



    • LOCK MONITOR



    • SELECT



    • SIGNAL HANDLER



    執(zhí)行 sp_who 可得到有效 SPID 值的報(bào)告。如果某個(gè)特定的 SPID 的回滾正在進(jìn)行,則 sp_who 結(jié)果集中的這個(gè) SPID 的 cmd 列將顯示"KILLED/ROLLBACK"。



    使用 @@SPID 可顯示當(dāng)前會(huì)話(huà)的 SPID 值。



    在 SQL Server 2000 中,KILL 命令可用于解決與非分布式和分布式事務(wù)相關(guān)聯(lián)的 SPID。KILL 還可用于解決孤立的或置疑的分布式事務(wù)。當(dāng)分布式事務(wù)未與任何當(dāng)前 SPID 關(guān)聯(lián)時(shí),即為孤立的。



    SPID 值為 '-2' 用于指示無(wú)連接或孤立的事務(wù)。SQL Server 將該值指派給所有孤立的分布式事務(wù),使在 sp_lockspid 列)、sp_whoblk 列)、syslockinfo sysprocesses 中標(biāo)識(shí)這樣的事務(wù)更容易。當(dāng)特定的連接在數(shù)據(jù)庫(kù)資源上有鎖并阻塞事務(wù)進(jìn)程時(shí),該功能十分有用。用戶(hù)能夠識(shí)別擁有鎖的 SPID,并結(jié)束連接。



    KILL 命令可用來(lái)解決懷疑有問(wèn)題的事務(wù),即由于未計(jì)劃重新啟動(dòng)數(shù)據(jù)庫(kù)服務(wù)器或 DTC 處理協(xié)調(diào)器而產(chǎn)生的未解決的分布式事務(wù)。有關(guān)解決懷疑有問(wèn)題的事務(wù)的更多信息,請(qǐng)參見(jiàn) MS DTC 事務(wù)疑難解答。



    權(quán)限


    默認(rèn)情況下,sysadminprocessadmin 固定數(shù)據(jù)庫(kù)角色的成員具有 KILL 的默認(rèn)權(quán)限,KILL 權(quán)限不可轉(zhuǎn)讓。



    示例


    A. 使用 KILL 終止 SPID


    下面的示例顯示如何終止 SPID 53。



    KILL 53


    B. 使用 KILL spid WITH STATUSONLY 獲得進(jìn)度報(bào)告。


    下面的示例為特定的 spid 生成回滾進(jìn)程的狀態(tài)。



    KILL 54
    KILL 54 WITH STATUSONLY

    --This is the progress report.
    spid 54: Transaction rollback in progress. Estimated rollback completion: 80% Estimated time left: 10 seconds.


    C. 使用 KILL 終止孤立的分布式事務(wù)。


    下例說(shuō)明如何使用 UOW = D5499C66-E398-45CA-BF7E-DC9C194B48CF 終止孤立 (SPID = -2) 事務(wù)。



    KILL 'D5499C66-E398-45CA-BF7E-DC9C194B48CF'
    相關(guān)文章
    本頁(yè)查看次數(shù):