亚洲欧美精品沙发,日韩在线精品视频,亚洲Av每日更新在线观看,亚洲国产另类一区在线5

<pre id="hdphd"></pre>

  • <div id="hdphd"><small id="hdphd"></small></div>
      學習啦>知識大全>知識百科>百科知識>

      oracle中死鎖是什么

      時間: 歐東艷656 分享

        死鎖(Deadlock),這里指的是進程死鎖,是個計算機技術名詞。它是操作系統或軟件運行的一種狀態(tài):在多任務系統下,當一個或多個進程等待系統資源,而資源又被進程本身或其它進程占用時,就形成了死鎖。由于資源占用是互斥的,當某個進程提出申請資源后,使得有關進程在無外力協助下,永遠分配不到必需的資源而無法繼續(xù)運行,這就產生了一種特殊現象。

        如何解決ORACLE死鎖的問題

        死鎖產生的原因

        兩個事務更新同一個表,并且同時每個事務要更新的數據正在被另外一個事務所鎖定。因為兩個事務在相互等待資源,兩個事務都無法繼續(xù)下去直到ORACLE產生一個DEADLOCK的錯誤。

        ORACLE在檢測到發(fā)生死鎖后,會自動回滾TRANSACTION1中的update emp set sal = sal * 1 where empno = 2000,但是事務中的第一個語句不會回滾,必須用戶自己提交ROLLBACK操作。

        如果在應用程序設計上可以撲獲DEADLOCK的錯誤,然后使用應用程序級別的事務回滾來解決死鎖。

        解決:

        此錯誤主要是由于多個進程訪問同一數據庫時,其中每個進程擁有的鎖都是其他進程所需的,由此造成每個進程都無法繼續(xù)下去。簡單的說,進程A等待進程B釋放他的資源,B又等待A釋放他的資源,這樣就互相等待,從而形成的.在發(fā)現該問題出現后,應當及時查看數據庫是否自動把死鎖進程中的一個結束,若沒有就應當手動的殺掉其中一個進程,以免影響數據庫的正常穩(wěn)定運行.

      oracle中死鎖是什么

      死鎖(Deadlock),這里指的是進程死鎖,是個計算機技術名詞。它是操作系統或軟件運行的一種狀態(tài):在多任務系統下,當一個或多個進程等待系統資源,而資源又被進程本身或其它進程占用時,就形成了死鎖。由于資源占用是互斥的,當某個進程
      推薦度:
      點擊下載文檔文檔為doc格式
      246958