MySQL原理解讀 事務

2021-10-10 05:00:17 字數 593 閱讀 4849

資料庫事務有4個屬性,我們叫它們acid,分別為原子性、一致性、隔離性和永續性

###1.1、原子性(atomicity)

乙個事務內的操作是不可分割的,要麼都成功,要麼都失敗

事務把資料從乙個正確的狀態遷移到另乙個正確的狀態

併發事務相互隔離(多個事務之間的操作過程不可見)

資料是持久化儲存的(比如存到磁碟上了)

乙個寫事務的資料回滾,導致其他寫事務的資料被覆蓋

乙個寫事務的資料回滾,而其他讀事務的資料還停留在回滾之前的資料

乙個寫事務修改資料,導致其他讀事務前後資料不一致

乙個寫事務插入資料,導致其他寫事務的更新結果不符合預期

乙個正在進行的寫事務,允許其他讀事務讀他未提交的資料,但不允許其他寫事務操作行資料

解決了資料丟失的問題

乙個正在進行的讀事務,允許其他讀寫事務運算元據;乙個正在進行的寫事務,禁止其他任何事務操作行資料

解決了資料丟失和髒讀的問題

乙個正在進行的事務,禁止其他事務操作行資料

解決了讀未提交、資料丟失和髒讀的問題

乙個正在進行的事務,禁止其他事務操作該張表

解決了所有問題,但是併發極低,基本不用

Mysql原理解讀 索引

我們主要以innodb引擎來了解索引 索引都儲存在磁碟的資料頁中 索引在大體上分為兩類 聚簇索引 非聚簇索引 他們都通過b 數實現 把索引值和資料儲存在一起的索引叫聚簇索引 mysql的主鍵預設使用聚簇索引 盡量使用自增字段作為主鍵,防止後續行資料插入導致索引樹中的節點 甚至是磁碟的資料頁 把索引值...

dnn解讀 MT DNN原理解讀

最近大佬們接連放出大招。mt dnn還沒看,gpt2就出來了,爭取這兩天讀完把細節寫一下,一直堅持追蹤nlp預訓練模型的進展,自己工作中也用上了bert,希望nlp的發展越來越好。不了解bert的請戳這裡。正文分割線 1.mt dnn模型 1.1 模型結構 了解bert的朋友們一看這個圖估計就懂了,...

Vuex原理解讀

註冊vuex vue.usee vuex 建立store例項並匯出 export default newvuex.store getters mutations actions modules import store from store newvue mount vuex有乙個store建構函式...