1、?用SYS登陸TOAD
站在用戶(hù)的角度思考問(wèn)題,與客戶(hù)深入溝通,找到長(zhǎng)寧網(wǎng)站設(shè)計(jì)與長(zhǎng)寧網(wǎng)站推廣的解決方案,憑借多年的經(jīng)驗(yàn),讓設(shè)計(jì)與互聯(lián)網(wǎng)技術(shù)結(jié)合,創(chuàng)造個(gè)性化、用戶(hù)體驗(yàn)好的作品,建站類(lèi)型包括:網(wǎng)站設(shè)計(jì)制作、網(wǎng)站制作、企業(yè)官網(wǎng)、英文網(wǎng)站、手機(jī)端網(wǎng)站、網(wǎng)站推廣、空間域名、虛擬空間、企業(yè)郵箱。業(yè)務(wù)覆蓋長(zhǎng)寧地區(qū)。
2、打開(kāi)菜單Database-Monitor-SessionBrowser
3、查看所有會(huì)話(huà),是否存在鎖定資源的情況!
4、?如果有死鎖,可以將此會(huì)話(huà)Kill掉!
1.可能在Oracle中可以有計(jì)時(shí)器,在頻繁操作數(shù)據(jù)庫(kù),update,insert,delete語(yǔ)句,在jobs中能查看到(如圖)
2.可能在.net程序中使用到timer控件,頻繁的操作數(shù)據(jù)庫(kù)update,insert,delete語(yǔ)句(如圖)
3.可能在.net程序中使用到Thead(線(xiàn)程)頻繁的操作數(shù)據(jù)庫(kù)update,insert,delete語(yǔ)句(這個(gè)條為個(gè)人觀點(diǎn),還未得到證實(shí))
【注釋】:此處更新數(shù)據(jù)量都比較大,比如說(shuō)update的數(shù)據(jù)庫(kù)條數(shù)可能在1000條以上,
導(dǎo)致其他操作在等待(update跟其他操作都是同一張表)
4.可能使用到事務(wù)處理(Tran),沒(méi)有提交事務(wù)(CommintTran)或者沒(méi)有回滾事務(wù)(Rollback)
【注釋】:在SqlServer數(shù)據(jù)庫(kù)里面有一個(gè)隱式事務(wù),關(guān)閉時(shí)候,每次修改插入都需要手動(dòng)提交,不然就會(huì)導(dǎo)致死鎖
下面查詢(xún)可以查到死鎖,但是注意其實(shí)查詢(xún)到的不是真正的死鎖,查詢(xún)到的只是是死鎖發(fā)生前的等待條件,真正的死鎖在10G中會(huì)被系統(tǒng)所阻止掉
select t2.username||' '||t2.sid||' '||t2.serial#||' '||t2.logon_time||' '||t3.sql_text
from v$locked_object t1,v$session t2,v$sqltext t3
where t1.session_id=t2.sid
and t2.sql_address=t3.address
order by t2.logon_time ;
此外,從V$LOCK的BLOCK字段可以看到,BLOCK0表示有等待發(fā)生了,注意是行級(jí)等待,而在表級(jí)沒(méi)有死鎖或等待
select * from v$lock where block0 ;