怎麼樣避免mysql死鎖

青灯夜游
發布: 2020-09-18 09:13:07
原創
8374 人瀏覽過

避免mysql死鎖的方法:1、以固定的順序存取表格和行;2、大事務更傾向於死鎖,如果業務允許,將大事務拆小;3、在同一個事務中,盡可能做到一次鎖定所需的所有資源,減少死鎖機率;4、降低隔離等級;5、為表格添加合理的索引。

怎麼樣避免mysql死鎖

如何盡可能避免死鎖:

#1、以固定的順序存取表格和行。例如兩個更新資料的事務,事務A 更新資料的順序 為1,2;事務B更新資料的順序為2,1。這樣更可能會造成死鎖。

2、大事務拆小。大事務更傾向於死鎖,如果業務允許,將大事務拆小。

3、在同一個交易中,盡可能做到一次鎖定所需的所有資源,減少死鎖機率。

4、降低隔離等級。如果業務允許,將隔離等級調低也是較好的選擇,例如將隔離等級從RR調整為RC,可以避免掉很多因為gap鎖定造成的死鎖。

5、為表格新增合理的索引。可以看到如果不走索引將會為表的每一行記錄添加上鎖,死鎖的機率大大增大。

以上是怎麼樣避免mysql死鎖的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!