伊人99re_av日韩成人_91高潮精品免费porn_色狠狠色婷婷丁香五月_免费看的av_91亚色网站

中培偉業(yè)IT資訊頻道
您現(xiàn)在的位置:首頁 > IT資訊 > 數(shù)據(jù)庫 > 揭秘MySQL數(shù)據(jù)庫的引擎和事務(wù)

揭秘MySQL數(shù)據(jù)庫的引擎和事務(wù)

2020-06-17 15:55:22 | 來源:中培企業(yè)IT培訓(xùn)網(wǎng)

MySQL是由瑞典MySQL AB公司開發(fā)的關(guān)系數(shù)據(jù)庫管理系統(tǒng),屬于Oracle旗下的產(chǎn)品。MySQL數(shù)據(jù)表引擎包括MyISAM,InnoDB,HEAP,BOB,ARCHIVE,CSV等。其中,MyISAM:成熟,穩(wěn)定,易于管理且易于讀取。表級鎖不支持某些功能(事務(wù)等)。InnoDB:支持事務(wù),外鍵等功能,數(shù)據(jù)行鎖定。它占用大量空間,并且不支持全文本索引(5.6.4之后支持全文本索引)。兩種常用的引擎是:MyISAM和InnoDB。

  MySQL 的存儲引擎,myisam和innodb的區(qū)別?

1.MyISAM 是非事務(wù)的存儲引擎,適合用于頻繁查詢的應(yīng)用。表鎖,不會出現(xiàn)死鎖,適合小數(shù)據(jù),小并發(fā)。

2.innodb是支持事務(wù)的存儲引擎,合于插入和更新操作比較多的應(yīng)用,設(shè)計合理的話是行鎖(最大區(qū)別就在鎖的級別上),適合大數(shù)據(jù),大并發(fā)。

  MySQL的事務(wù)

MySQL事務(wù)主要用于處理操作量大,復(fù)雜度高的數(shù)據(jù)。比如說,在人員管理系統(tǒng)中,你刪除一個人員,你既需要刪除人員的基本資料,也要刪除和該人員相關(guān)的信息,如信箱,文章等等,這樣,這些數(shù)據(jù)庫操作語句就構(gòu)成一個事務(wù)!

1.在MySQL中只有使用了Innodb數(shù)據(jù)庫引擎的數(shù)據(jù)庫或表才支持事務(wù)。

2.事務(wù)處理可以用來維護(hù)數(shù)據(jù)庫的完整性,保證成批的 SQL 語句要么全部執(zhí)行,要么全部不執(zhí)行。

3.事務(wù)用來管理insert,update,delete 語句:

一般來說,事務(wù)是必須滿足4個條件(ACID):原子性(Atomicity,或稱不可分割性)、一致性(Consistency)、隔離性(Isolation,又稱獨(dú)立性)、持久性(Durability)。

(1)原子性:一個事務(wù)(transaction)中的所有操作,要么全部完成,要么全部不完成,不會結(jié)束在中間某個環(huán)節(jié)。事務(wù)在執(zhí)行過程中發(fā)生錯誤,會被回滾(Rollback)到事務(wù)開始前的狀態(tài),就像這個事務(wù)從來沒有執(zhí)行過一樣。

(2)一致性:在事務(wù)開始之前和事務(wù)結(jié)束以后,數(shù)據(jù)庫的完整性沒有被破壞。這表示寫入的資料必須完全符合所有的預(yù)設(shè)規(guī)則,這包含資料的精確度、串聯(lián)性以及后續(xù)數(shù)據(jù)庫可以自發(fā)性地完成預(yù)定的工作。

(3)數(shù)據(jù)庫允許多個并發(fā)事務(wù)同時對其數(shù)據(jù)進(jìn)行讀寫和修改的能力,隔離性可以防止多個事務(wù)并發(fā)執(zhí)行時由于交叉執(zhí)行而導(dǎo)致數(shù)據(jù)的不一致。

(4)事務(wù)隔離分為不同級別,包括讀未提交(Read uncommitted)、讀提交(read committed)、可重復(fù)讀(repeatable read)和串行化(Serializable)。

(5)事務(wù)處理結(jié)束后,對數(shù)據(jù)的修改就是永久的,即便系統(tǒng)故障也不會丟失。

  事務(wù)的隔離級別

1.Read uncommitted 讀未提交,顧名思義,就是一個事務(wù)可以讀取另一個未提交事務(wù)的數(shù)據(jù)。事例:老板要給程序員發(fā)工資,程序員的工資是3.6萬/月。但是發(fā)工資時老板不小心按錯了數(shù)字,按成3.9萬/月,該錢已經(jīng)打到程序員的戶口,但是事務(wù)還沒有提交,就在這時,程序員去查看自己這個月的工資,發(fā)現(xiàn)比往常多了3千元,以為漲工資了非常高興。但是老板及時發(fā)現(xiàn)了不對,馬上回滾差點(diǎn)就提交了的事務(wù),將數(shù)字改成3.6萬再提交。分析:實(shí)際程序員這個月的工資還是3.6萬,但是程序員看到的是3.9萬。他看到的是老板還沒提交事務(wù)時的數(shù)據(jù)。這就是臟讀。

2.Read committed 讀提交,顧名思義,就是一個事務(wù)要等另一個事務(wù)提交后才能讀取數(shù)據(jù)。事例:程序員拿著信用卡去享受生活(卡里當(dāng)然是只有3.6萬),當(dāng)他埋單時(程序員事務(wù)開啟),收費(fèi)系統(tǒng)事先檢測到他的卡里有3.6萬,就在這個時候!程序員的妻子要把錢全部轉(zhuǎn)出充當(dāng)家用,并提交。當(dāng)收費(fèi)系統(tǒng)準(zhǔn)備扣款時,再檢測卡里的金額,發(fā)現(xiàn)已經(jīng)沒錢了(第二次檢測金額當(dāng)然要等待妻子轉(zhuǎn)出金額事務(wù)提交完)。程序員就會很郁悶,明明卡里是有錢的…分析:這就是讀提交,若有事務(wù)對數(shù)據(jù)進(jìn)行更新(UPDATE)操作時,讀操作事務(wù)要等待這個更新操作事務(wù)提交后才能讀取數(shù)據(jù),可以解決臟讀問題。但在這個事例中,出現(xiàn)了一個事務(wù)范圍內(nèi)兩個相同的查詢卻返回了不同數(shù)據(jù),這就是不可重復(fù)讀。

3.Repeatable read 重復(fù)讀,就是在開始讀取數(shù)據(jù)(事務(wù)開啟)時,不再允許修改操作事例:程序員拿著信用卡去享受生活(卡里當(dāng)然是只有3.6萬),當(dāng)他埋單時(事務(wù)開啟,不允許其他事務(wù)的UPDATE修改操作),收費(fèi)系統(tǒng)事先檢測到他的卡里有3.6萬。這個時候他的妻子不能轉(zhuǎn)出金額了。接下來收費(fèi)系統(tǒng)就可以扣款了。分析:重復(fù)讀可以解決不可重復(fù)讀問題。寫到這里,應(yīng)該明白的一點(diǎn)就是,不可重復(fù)讀對應(yīng)的是修改,即UPDATE操作。但是可能還會有幻讀問題。因?yàn)榛米x問題對應(yīng)的是插入INSERT操作,而不是UPDATE操作。

4.Serializable 序列化 Serializable 是最高的事務(wù)隔離級別,在該級別下,事務(wù)串行化順序執(zhí)行,可以避免臟讀、不可重復(fù)讀與幻讀。但是這種事務(wù)隔離級別效率低下,比較耗數(shù)據(jù)庫性能,一般不使用。什么時候會出現(xiàn)幻讀?事例:程序員某一天去消費(fèi),花了2千元,然后他的妻子去查看他今天的消費(fèi)記錄(全表掃描FTS,妻子事務(wù)開啟),看到確實(shí)是花了2千元,就在這個時候,程序員花了1萬買了一部電腦,即新增INSERT了一條消費(fèi)記錄,并提交。當(dāng)妻子打印程序員的消費(fèi)記錄清單時(妻子事務(wù)提交),發(fā)現(xiàn)花了1.2萬元,似乎出現(xiàn)了幻覺,這就是幻讀。序列化解決幻讀。  

以上就是關(guān)于MySQL的引擎和事務(wù)的相關(guān)內(nèi)容介紹,想了解更多MySQL數(shù)據(jù)庫的信息,請繼續(xù)關(guān)注中培偉業(yè)。

標(biāo)簽: MySQL 數(shù)據(jù)庫
主站蜘蛛池模板: 日本成人黄色片 | 日本a人精品 | 精品欧美一区二区在线观看欧美熟 | 日韩欧美有码 | 欧美日韩午夜视频 | 亚洲男女羞羞无遮挡久久丫 | 毛片一级视频 | 天堂一区二区在线 | 天天狠天天天天透在线 | 国产超薄肉丝袜在线 | 一区二区三区韩国 | 国产l精品国产亚洲区久久 aaaa少妇高潮欧美大片 | 蜜臀AV无码国产精品色午夜麻豆 | 日韩精品日韩激情日韩综合 | 俄罗斯美女肛交内射WWWC〇M | 手机在线播放国产女主播 | 成人性生交大片免费看2 | 日本在线网站 | 欧美性生交大片免网 | 性日本少妇 | 少妇被两个黑人3p喷水在线观看 | 国产性夜夜春夜夜爽 | 狠狠做五月深爱婷婷伊人 | 村女艳史理伦一及毛片 | 999国内精品永久免费视频 | 粉嫩小仙女扒开双腿自慰 | 亚洲最大免费网站 | 日韩亚洲精品国产第二页 | 久久久久亚洲精品无码蜜桃 | ASS少妇PICS粉嫩BBW | 中国美女牲交视频 | 国产成人毛片精品不卡在线 | 男人j桶进女人p无遮挡 | 456亚洲人成在线播放网站 | 99在线观看视频 | 成人午夜精品久久久久久久3d | www免费视频com | 亚洲欧美日韩成人高清在线一区 | 欧美在线综合视频 | 99久99| 欧美性猛交xxxx乱大交密桃 |