通過線程知識理解和記住數據庫隔離級別

理解和記住數據庫隔離級別

數據庫的隔離級別其實就是兩條線程進行操作同一條數據可能會出現的情況,通過線程的知識可以很好的理解。

  1. repeatable read 可重複讀
    線程b在讀取一條數據,線程a提交了事務,線程b讀到的依舊是線程a未提交事務之前的數據,這是mysql默認隔離級別。簡單的講就是

    b多次讀
    a提交事務
    b讀不到a提交的數據
    
  2. read uncommitted 讀未提交
    線程b在讀取一條數據,線程a未事務,線程b讀到了線程a未提交事務的數據,簡單的講就是

    b多次讀
    a還未提交事務
    b讀到了a未提交的數據
    
  3. read committed 讀已提交
    線程b在讀取一條數據,線程a未事務,線程b讀到了線程a未提交事務的數據,簡單的講就是

     b多次讀
     a提交事務
     b讀到了a提交的數據
    
  4. serializable 串行化
    事務一個接一個的執行

髒讀:讀取到了未提交事務的數據

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章