日韩av片子_国产自在自线午夜精品视频在_使劲快高潮了国语对白在线_久久免费毛片大全_激情丁香综合_欧美成人精品欧美一级乱黄码

中培偉業(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 的存儲(chǔ)引擎,myisam和innodb的區(qū)別?

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

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

  MySQL的事務(wù)

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

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

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

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

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

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

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

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

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

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

  事務(wù)的隔離級別

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

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

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

4.Serializable 序列化 Serializable 是最高的事務(wù)隔離級別,在該級別下,事務(wù)串行化順序執(zhí)行,可以避免臟讀、不可重復(fù)讀與幻讀。但是這種事務(wù)隔離級別效率低下,比較耗數(shù)據(jù)庫性能,一般不使用。什么時(shí)候會(huì)出現(xiàn)幻讀?事例:程序員某一天去消費(fèi),花了2千元,然后他的妻子去查看他今天的消費(fèi)記錄(全表掃描FTS,妻子事務(wù)開啟),看到確實(shí)是花了2千元,就在這個(gè)時(shí)候,程序員花了1萬買了一部電腦,即新增INSERT了一條消費(fèi)記錄,并提交。當(dāng)妻子打印程序員的消費(fèi)記錄清單時(shí)(妻子事務(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ù)庫
主站蜘蛛池模板: 日韩亚洲人成在线综合 | 啪啪激情婷婷久久婷婷色五月 | 91一区二区三区视频 | 日韩区欧美久久久无人区 | 二区免费| 国产精品影院在线 | 久久美女网 | 在线黄色免费看 | 国产吹潮视频在线观看 | 国产又色又爽又刺激在线观看 | 免费视频毛片 | 在线观看免费成人av | 99在线精品视频免费观看20 | 午夜影院在线看 | 成年人爱视频亚洲 | 国产精品乱码一区二区三区 | 亚洲最新在线 | 久久久久久久久久久一区二区 | 日韩欧美亚洲国产成人综合网 | 国产香线蕉手机视频在线观看 | 久久天天躁狠狠躁夜夜免费观看 | 亚洲欧美日本韩国综合在线观看 | 欧美日韩中文在线视频 | 国产aa | 亚洲日韩在线中文字幕第一页 | 91精品国产综合久久久久久久 | 国产精品嫩草影视 | 国产精品秘入口18禁麻豆免会员 | 国产v亚洲v日韩v欧美v片 | a级毛片视频免费观看 | 日本高清高色视频免费 | 国产原创av在线 | 3bmm在线观看视频免费 | 在线观看av中文 | 亚洲好骚| 四虎成人精品永久免费av | 日韩精品久久一区二区桃色 | 91免费一区二区 | 女邻居说我的好大好硬 | 91精品久久久久五月天精品 | eeuss鲁片一区二区三区69 |