MySQL高级 - 锁 - InnoDB行锁 - 总结
生活随笔
收集整理的這篇文章主要介紹了
MySQL高级 - 锁 - InnoDB行锁 - 总结
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
InnoDB存儲引擎由于實現了行級鎖定,雖然在鎖定機制的實現方面帶來了性能損耗可能比表鎖會更高一些,但是在整體并發處理能力方面要遠遠由于MyISAM的表鎖的。當系統并發量較高的時候,InnoDB的整體性能和MyISAM相比就會有比較明顯的優勢。
但是,InnoDB的行級鎖同樣也有其脆弱的一面,當我們使用不當的時候,可能會讓InnoDB的整體性能表現不僅不能比MyISAM高,甚至可能會更差。
優化建議:
-
盡可能讓所有數據檢索都能通過索引來完成,避免無索引行鎖升級為表鎖。
-
合理設計索引,盡量縮小鎖的范圍
-
盡可能減少索引條件,及索引范圍,避免間隙鎖
-
盡量控制事務大小,減少鎖定資源量和時間長度
-
盡可使用低級別事務隔離(但是需要業務層面滿足需求)
總結
以上是生活随笔為你收集整理的MySQL高级 - 锁 - InnoDB行锁 - 总结的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: MySQL高级 - 锁 - InnoDB
- 下一篇: MySQL高级 - SQL技巧 - SQ