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

精品国产亚洲一区二区三区,男女作爱在线观看免费网站,欧美的又大又长做禁片A片,97国产精品人妻无码久久久

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

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



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



    語法


    KILL {spid | UOW} [WITH STATUSONLY]



    參數(shù)


    spid



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



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



    UOW



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



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



    WITH STATUSONLY



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



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



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


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



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


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



    注釋


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



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


    • AWAITING COMMAND



    • CHECKPOINT SLEEP



    • LAZY WRITER



    • LOCK MONITOR



    • SELECT



    • SIGNAL HANDLER



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



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



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



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



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



    權(quán)限


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



    示例


    A. 使用 KILL 終止 SPID


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



    KILL 53


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


    下面的示例為特定的 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ù)。


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



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