mysql死鎖的原因及解決方法
mysql死鎖的原因及解決方法如下:
1、一個用户A訪問表A(鎖住了表A),然後又訪問表B;另一個用户B 訪問表B(鎖住了表B),然後企圖訪問表A;這時用户A由於用户B已經鎖住表B,它必須等待用户B釋放表B才能繼續,同樣用户B要等用户A釋放表A才能繼續,這就死鎖就產生了。解決方法為:這種死鎖比較常見,是由於程序的BUG產生的,除了調整的程序的邏輯沒有其它的辦法。仔細分析程序的邏輯,對於數據庫的多表操作時,儘量按照相同的順序進 行處理,儘量避免同時鎖定兩個資源,如操作A和B兩張表時,總是按先A後B的順序處理, 必須同時鎖定兩個資源時,要保證在任何時刻都應該按照相同的順序來鎖定資源。
2、用户A查詢一條紀錄,然後修改該條紀錄;這時用户B修改該條紀錄,這時用户A的事務裏鎖的性質由查詢的共享鎖企圖上升到獨佔鎖,而用户B裏的獨佔鎖由於A 有共享鎖存在所以必須等A釋放掉共享鎖,而A由於B的獨佔鎖而無法上升的獨佔鎖也就不可能釋放共享鎖,於是出現了死鎖。這種死鎖比較隱蔽,但在稍大點的項 目中經常發生。如在某項目中,頁面上的按鈕點擊後,沒有使按鈕立刻失效,使得用户會多次快速點擊同一按鈕,這樣同一段代碼對數據庫同一條記錄進行多次操 作,很容易就出現這種死鎖的情況。解決方法為:對於按鈕等控件,點擊後使其立刻失效,不讓用户重複點擊,避免對同時對同一條記錄操作。
-
qq怎麼恢復被退出的羣
21世紀是互聯網信息時代,互聯網聊天軟件發揮重要信息溝通作用,一些我們不需要的聊天羣會選擇退出,也會由於不小心或者別的原因退出了qq羣,那麼退出的聊天羣該怎麼恢復呢?退出的qq羣只有羣主能進行恢復操作,管理員不能恢復,而且只能恢復被羣主或管理員刪除的羣成員。而...
-
黑色背景拍照竅門詳解
1、調整拍攝角度,尋找背景:既然是拍攝黑背景,在拍攝前我們儘量選擇深色的背景,這樣也就更加容易達到效果。不過深色不一定要是純黑色,只要顏色較為深沉,偏向暗色調的均可。拍攝前多多觀察,尋找不同的拍攝角度,以找到有反差的深色作為背景。要多嘗試不同的角度,直至主體...
-
蘋果5打電話怎麼錄音
1、首先在AppleStore商城直接搜索Wetalkpro下載安裝到手機裏。2、然後打開Wetalkpro,撥打對方的手機號碼。3、通話時只要點擊一下里面的紅色錄音按鈕就可以進行錄音,把對話記錄下來。4、通話錄音的記錄在歷史與錄音裏面可以查看到了。5、特別提示:因為這款軟件使...
-
樓上樓下安裝兩個路由器方法,如何樓上樓下安裝兩個路由器
1、兩個無線路由器,主路由器A,副路由器B,主路由器A中不需要任何更改。把副路由器B放在家合適的位置中,接通電源。打開手機連接上副路由器B的WIFI(也可用電腦設置),打開任一瀏覽器,在地址欄中輸入路由器的IP(不同路由器的IP不一樣,具體查看説明書或路由器背面標籤)。2、輸...