oracle資料庫操作執行不了,出現假死狀態

來源:互聯網
上載者:User

標籤:資料庫操作假死   oracle   表鎖定   commit   事務提交   

問題:update 不能更新表

表中19條記錄,在更新的時候,偶爾能更新,偶爾就 update 不動了。

更新操作執行的時候,就不動了,好象是死掉一樣.


關於資料庫事務引起的問題

在oracle一個事務沒有提交之前,下一個事務是處於掛起狀態,通常會出現表被鎖定,就是上述的假死狀態。

查看被掛起的事務(或者說沒有被提交的事務),網上有的說法是查看被鎖定的表(我認為此說法不妥,表並沒有被鎖定,可以進行插入插入等操作)

(用管理使用者登入 sqlplus  / as sysdba)

SELECT p.spid,

      c.object_name,

      b.session_id,

      a.serial#,

      b.oracle_username,

      b.os_user_name

 FROM v$process p, v$session a, v$locked_object b, all_objects c

 WHERE p.addr = a.paddr

  AND a.process = b.process

  AND c.object_id = b.object_id;


以下為例子:

SQL> SELECT p.spid,

 2        c.object_name,

 3        b.session_id,

 4        a.serial#,

 5        b.oracle_username,

 6        b.os_user_name

 7   FROM v$processp, v$sessiona, v$locked_objectb, all_objectsc

 8   WHERE p.addr= a.paddr

 9    AND a.process= b.process

 10   AND c.object_id= b.object_id;


SPID                     OBJECT_NAME                    SESSION_ID    SERIAL#

------------------------------------------------------ ---------- ----------

ORACLE_USERNAME                OS_USER_NAME

------------------------------------------------------------

8070                     DISK_CHECK                            390       3467

SECNET                         root


SQL> alter system killsession‘390,3467‘;


System altered.

這個表中記錄了等待被提交的事務,只要“解鎖”就可以了


將查詢出來的session_id,serial#,記錄下來使用如下語句進行解鎖


解鎖:

alter system kill session‘b.session_id,a.serial#‘;


解鎖之後就可以對錶進行update操作了,大量操作最容易引起一個事務未結束立馬進行下一個事務

要有一個好的習慣:一個事務結束立馬提交(提交命令commit;)。


oracle資料庫操作執行不了,出現假死狀態

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.