時間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評論(0)
我們這里將介紹Oracle如何解鎖,在被鎖之后我們也可以利用一些工具來進行解鎖。下面大家就一同來了解Oracle如何解鎖吧。
我們在操作數(shù)據(jù)庫的時候,有時候會由于操作不當(dāng)引起數(shù)據(jù)庫表被鎖定,這么我們經(jīng)常不知道Oracle如何解鎖,不知怎么給這些表解鎖,在pl/sql Developer工具的的菜單"tools"里面的"sessions"可以查詢現(xiàn)在存在的會話,但是我們很難找到那個會話被鎖定了,想找到所以被鎖的會話就更難了,下面這叫查詢語句可以查詢出所以被鎖的會話。如下:
1.SELECT?? sn.username, m.SID,sn.SERIAL#, m.TYPE,
2.?? DECODE (m.lmode,
3.???? 0, \'None\',
4.???? 1, \'Null\',
5.???? 2, \'Row Share\',
6.???? 3, \'Row Excl.\',
7.???? 4, \'Share\',
8.???? 5, \'S/Row Excl.\',
9.???? 6, \'Exclusive\',
10.???? lmode, LTRIM (TO_CHAR (lmode, \'990\'))
11.??? ) lmode,
12.?? DECODE (m.request,
13.???? 0, \'None\',
14.???? 1, \'Null\',
15.???? 2, \'Row Share\',
16.???? 3, \'Row Excl.\',
17.???? 4, \'Share\',
18.???? 5, \'S/Row Excl.\',
19.???? 6, \'Exclusive\',
20.???? request, LTRIM (TO_CHAR (m.request, \'990\'))
21.??? ) request,
22.?? m.id1, m.id2
23.??? FROM v$session sn, v$lock m
24.?? WHERE (sn.SID = m.SID AND m.request != 0)?? --存在鎖請求,即被阻塞
25.????? OR (??? sn.SID = m.SID --不存在鎖請求,但是鎖定的對象被其他會話請求鎖定
26.??? AND m.request = 0
27.??? AND lmode != 4
28.??? AND (id1, id2) IN (
29.????? SELECT s.id1, s.id2
30.? FROM v$lock s
31. WHERE request != 0 AND s.id1 = m.id1
32. AND s.id2 = m.id2)
33.?? )
34.ORDER BY id1, id2, m.request;
通過以上查詢知道了sid和 SERIAL#就可以用了
1.alter system kill session \'sid,SERIAL#\';
關(guān)鍵詞標(biāo)簽:Oracle解鎖
相關(guān)閱讀
熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫實例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索
人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法