国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

mysql基礎(chǔ)面經(jīng)之三:事務(wù)

這篇具有很好參考價(jià)值的文章主要介紹了mysql基礎(chǔ)面經(jīng)之三:事務(wù)。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問(wèn)。

6 事務(wù)

6.1 說(shuō)一下事務(wù)的ACID和隔離級(jí)別

1 講解了AID三個(gè)特性都是為了C(一致性)服務(wù)的。一般數(shù)據(jù)庫(kù)需要使用事務(wù)保證數(shù)據(jù)庫(kù)的一致性。
正確情況下最好詳細(xì)講講:
ACID是用來(lái)描述數(shù)據(jù)庫(kù)事務(wù)的四個(gè)關(guān)鍵特性的首字母縮寫,具體包括:

  • 原子性(Atomicity):一個(gè)事務(wù)(transaction)必須被視為一個(gè)不可分割的最小工作單元,整個(gè)事務(wù)的所有操作要么全部提交成功,要么全部失敗回滾,對(duì)于一個(gè)事務(wù)來(lái)說(shuō),不能只執(zhí)行其中的一部分操作。
  • 一致性(Consistency):事務(wù)應(yīng)確保數(shù)據(jù)庫(kù)從一個(gè)一致的狀態(tài)轉(zhuǎn)變?yōu)榱硪粋€(gè)一致的狀態(tài)。一致性是指數(shù)據(jù)庫(kù)應(yīng)滿足預(yù)定的約束條件,如數(shù)據(jù)的完整性約束等。
  • 隔離性(Isolation):多個(gè)并發(fā)事務(wù)之間需要隔離,以防止數(shù)據(jù)損壞。隔離性保證了一個(gè)事務(wù)在執(zhí)行過(guò)程中,其操作和產(chǎn)生的中間態(tài)對(duì)其他并發(fā)事務(wù)是隔離的,即一個(gè)事務(wù)的執(zhí)行不應(yīng)影響其他事務(wù)。
  • 持久性(Durability):一旦事務(wù)提交,對(duì)數(shù)據(jù)的修改就是永久性的。即使出現(xiàn)系統(tǒng)故障,修改的數(shù)據(jù)也不會(huì)丟失。
    這四個(gè)特性是數(shù)據(jù)庫(kù)事務(wù)所必需的,可以確保數(shù)據(jù)的一致性和可靠性。A、I、D三個(gè)特性可以看作是為了實(shí)現(xiàn)C(一致性)服務(wù)的。事務(wù)就是為了保證操作數(shù)據(jù)庫(kù)的完整性和一致性,這就是ACID的重要性。

2 在SQL標(biāo)準(zhǔn)中定義了四種隔離級(jí)別,分別是:.。。。

6.2 假設(shè)第一個(gè)線程開啟了一個(gè)事務(wù)在開始和快結(jié)束時(shí)分別讀取一次,但是中間第二個(gè)線程修改了其中的數(shù)據(jù),這個(gè)時(shí)候 第一個(gè)線程第二次讀取到的數(shù)據(jù)是線程二修改后的還是修改前的數(shù)據(jù)?(重要)

答:這個(gè)問(wèn)題的答案取決于你的數(shù)據(jù)庫(kù)事務(wù)的隔離級(jí)別。

如果線程二的事務(wù)沒(méi)有提交:在讀未提交的隔離級(jí)別時(shí),可以讀取到數(shù)據(jù),但是在讀已提交、RR的級(jí)別下都不能讀取到線程二修改后的數(shù)據(jù),都只能讀取到修改前的數(shù)據(jù)。

如果線程二的事務(wù)提交了:此時(shí)不存在讀未提交的數(shù)據(jù)問(wèn)題,但是在讀已提交的隔離級(jí)別時(shí),可以讀取到修改后的數(shù)據(jù),但是在RR級(jí)別下讀取的是修改前的數(shù)據(jù)。

Serializable級(jí)別下,所有事務(wù)串行化執(zhí)行,如果第一個(gè)線程的事務(wù)先執(zhí)行,則全程只能讀取到修改前的數(shù)據(jù),等它執(zhí)行完了,線程二才能繼續(xù)執(zhí)行后續(xù)的修改操作。

也可以結(jié)合下面這個(gè)總結(jié)看一下:

  • Read Uncommitted(未提交讀):在這個(gè)級(jí)別,一個(gè)事務(wù)可能會(huì)看到其他事務(wù)未提交的數(shù)據(jù)。所以在你的例子中,線程一第二次讀取到的數(shù)據(jù)將是線程二修改后的數(shù)據(jù)。
  • Read Committed(提交讀):在這個(gè)級(jí)別,一個(gè)事務(wù)只能看到其他事務(wù)已經(jīng)提交的數(shù)據(jù)。在你的例子中,如果線程二在線程一第二次讀取之前已經(jīng)提交了事務(wù),那么線程一會(huì)讀取到線程二修改后的數(shù)據(jù)。如果線程二還沒(méi)有提交,那么線程一將讀取到線程二修改前的數(shù)據(jù)。
  • Repeatable Read(可重復(fù)讀):在這個(gè)級(jí)別,一個(gè)事務(wù)在整個(gè)過(guò)程中看到的數(shù)據(jù)是一致的。也就是說(shuō),在事務(wù)開始后,不會(huì)再看到其他事務(wù)對(duì)數(shù)據(jù)的修改。在你的例子中,線程一第二次讀取到的數(shù)據(jù)將是線程二修改前的數(shù)據(jù),不論線程二是否已經(jīng)提交了事務(wù)。
  • Serializable(可串行化):這是最嚴(yán)格的隔離級(jí)別,要求所有事務(wù)串行執(zhí)行。這種級(jí)別可以防止所有的并發(fā)問(wèn)題。

需要注意的是,隔離級(jí)別越高,數(shù)據(jù)的一致性越好,但是并發(fā)性能可能會(huì)降低。所以在實(shí)際的系統(tǒng)中需要根據(jù)實(shí)際的需求和性能要求來(lái)選擇合適的隔離級(jí)別。

6.3 mvcc的快照如何實(shí)現(xiàn)的

使用undo log日志,最近一個(gè)日志也就是快照,會(huì)被數(shù)據(jù)行的一個(gè)隱藏指針db_roll_ptr指向

6.4 寫sql

有一個(gè)teacher表,字段是id和name,還有一個(gè)t_s表,表示teacher-student,有字段tid,sid?,F(xiàn)在讓你查詢學(xué)生數(shù)大于10個(gè)的老師。

select t.name from teacher t left join t_s ts on t.id=ts.id group by t.id having count(ts.sid)>10

6.5 數(shù)據(jù)庫(kù)的隔離級(jí)別都是針對(duì)讀操作的嗎?

數(shù)據(jù)庫(kù)的隔離級(jí)別針對(duì)的不僅僅是讀操作,也包括寫操作。但往往我們更關(guān)注讀操作的一致性,因?yàn)樵诓l(fā)環(huán)境下,不同的隔離級(jí)別會(huì)對(duì)讀操作產(chǎn)生不同的影響,比如臟讀、不可重復(fù)讀和幻讀等問(wèn)題。而寫操作通常是由數(shù)據(jù)庫(kù)的并發(fā)控制機(jī)制(如鎖)來(lái)保證一致性的。

6.6 事務(wù)本身不能保證對(duì)寫的保護(hù),需要配合鎖一起完成

你是對(duì)的。事務(wù)只是提供了一種機(jī)制,確保由一組數(shù)據(jù)庫(kù)操作構(gòu)成的邏輯工作單元要么完全完成,要么完全不完成(這就是事務(wù)的原子性)。但事務(wù)本身并不能防止多個(gè)事務(wù)并發(fā)地修改同一份數(shù)據(jù),這可能會(huì)導(dǎo)致數(shù)據(jù)的不一致。

為了解決這個(gè)問(wèn)題,數(shù)據(jù)庫(kù)系統(tǒng)通常會(huì)使用鎖等并發(fā)控制機(jī)制來(lái)防止并發(fā)事務(wù)之間的沖突。當(dāng)一個(gè)事務(wù)試圖修改一份數(shù)據(jù)時(shí),數(shù)據(jù)庫(kù)系統(tǒng)會(huì)給這份數(shù)據(jù)加鎖,防止其他事務(wù)同時(shí)修改這份數(shù)據(jù)。直到這個(gè)事務(wù)完成(提交或者回滾)并釋放鎖,其他的事務(wù)才能修改這份數(shù)據(jù)。

這就是為什么我們說(shuō)數(shù)據(jù)庫(kù)的隔離級(jí)別提供了對(duì)寫操作的保護(hù)。實(shí)際上,這種保護(hù)是由數(shù)據(jù)庫(kù)的并發(fā)控制機(jī)制(如鎖)來(lái)實(shí)現(xiàn)的,不同的隔離級(jí)別使用了不同的并發(fā)控制策略,因此提供了不同程度的寫操作保護(hù)。

6.6.1 如果個(gè)事務(wù)在可重復(fù)讀的情況下,第一次讀操作后,使用了update語(yǔ)句更新這個(gè)操作,這個(gè)時(shí)候會(huì)重新 生成一次readview嗎然后基于最新的數(shù)據(jù)進(jìn)行更新?

在可重復(fù)讀的隔離級(jí)別下,一次讀操作后如果使用了update語(yǔ)句更新這個(gè)操作,不會(huì)重新生成一次readview。在可重復(fù)讀的隔離級(jí)別下,事務(wù)在開始時(shí)生成一個(gè)快照,后續(xù)的操作都是在這個(gè)快照的基礎(chǔ)上進(jìn)行的。當(dāng)事務(wù)執(zhí)行update語(yǔ)句時(shí),會(huì)根據(jù)之前的快照進(jìn)行更新操作。即使有其他事務(wù)對(duì)這個(gè)數(shù)據(jù)進(jìn)行了修改,本事務(wù)看到的數(shù)據(jù)仍然是開始時(shí)生成快照時(shí)的數(shù)據(jù)。

6.6.2 mysql數(shù)據(jù)庫(kù)的事務(wù)的一致性范圍?

推薦:如何理解數(shù)據(jù)庫(kù)事務(wù)中的一致性的概念?
在這篇文章中,指明了事務(wù)的一致性受到數(shù)據(jù)庫(kù)的完整性和應(yīng)用層業(yè)務(wù)特性的完整性約束,其中并發(fā)約束也屬于應(yīng)用層業(yè)務(wù)約束的需要,所以mysql事務(wù)的一致性的粒度可以是單線程的一致性也可以是多線程下并發(fā)的一致性,這取決于業(yè)務(wù)需要,當(dāng)然一般的并發(fā)業(yè)務(wù)都需要確保這種并發(fā)一致性,所以就會(huì)用到鎖來(lái)解決超賣、幻讀等問(wèn)題,但是單線程的業(yè)務(wù)就不需要用到鎖了。

6.6.3 在RR級(jí)別下,前后兩次使用select語(yǔ)句查詢相關(guān)區(qū)間內(nèi)記錄跳數(shù),中間另外一個(gè)事務(wù)往這個(gè)區(qū)間插入了語(yǔ)句,第二次select這個(gè)區(qū)間數(shù)據(jù)會(huì)發(fā)現(xiàn)多一條嗎?

在RR(Repeatable Read)級(jí)別下,兩次使用SELECT語(yǔ)句查詢相同的記錄集應(yīng)該返回相同的結(jié)果,即使在兩次查詢之間有其他事務(wù)往這個(gè)區(qū)間插入了記錄。因?yàn)樵赗R隔離級(jí)別下,事務(wù)在開始時(shí)會(huì)創(chuàng)建一個(gè)數(shù)據(jù)快照(read view),后續(xù)的讀操作都是基于這個(gè)快照進(jìn)行的,不會(huì)看到在事務(wù)開始后其他事務(wù)所做的修改。因此,如果在事務(wù)開始后其他事務(wù)插入了新記錄,當(dāng)前事務(wù)在后續(xù)的查詢中是看不到這些新記錄的。

要注意的是,盡管RR級(jí)別可以保證已有的記錄在事務(wù)期間保持一致性,但它并不能阻止其他事務(wù)插入新的記錄。當(dāng)當(dāng)前事務(wù)提交后,這些在事務(wù)期間插入的新記錄就會(huì)變得可見。

這也是RR隔離級(jí)別無(wú)法完全避免幻讀(phantom read)的原因。幻讀是指在某一個(gè)事務(wù)提交之后,一個(gè)查詢的結(jié)果集突然出現(xiàn)或消失。在RR級(jí)別下,事務(wù)不會(huì)看到其他事務(wù)插入的新行,但當(dāng)事務(wù)提交后,這些新行會(huì)變得可見,這就可能導(dǎo)致幻讀。

7 串行化相關(guān)問(wèn)題

7.1 串行化一定能保證讀取的數(shù)據(jù)是最新的對(duì)吧

是的,串行化是數(shù)據(jù)庫(kù)隔離級(jí)別中最高的級(jí)別,它可以保證事務(wù)串行執(zhí)行,從而避免并發(fā)執(zhí)行的事務(wù)產(chǎn)生的各種問(wèn)題,包括讀取的數(shù)據(jù)不是最新的問(wèn)題。在串行化級(jí)別下,事務(wù)的執(zhí)行結(jié)果和它們串行執(zhí)行的結(jié)果一致。

7.2 串行化的事務(wù)是數(shù)據(jù)庫(kù)中的所有事物嗎還是某一張表的關(guān)聯(lián)事務(wù),串行化的粒度有多大

串行化的粒度取決于具體的數(shù)據(jù)庫(kù)管理系統(tǒng)和它的并發(fā)控制機(jī)制。在一些數(shù)據(jù)庫(kù)系統(tǒng)中,串行化可能會(huì)鎖定整個(gè)數(shù)據(jù)庫(kù),使得所有的事務(wù)都必須串行執(zhí)行。在其他一些數(shù)據(jù)庫(kù)系統(tǒng)中,串行化可能只會(huì)鎖定被事務(wù)訪問(wèn)的數(shù)據(jù),使得訪問(wèn)不同數(shù)據(jù)的事務(wù)可以并行執(zhí)行。

mysql中串行化的粒度有多大?

MySQL中的串行化(SERIALIZABLE)隔離級(jí)別會(huì)對(duì)所有的讀操作都加鎖,以防止其他事務(wù)并發(fā)修改數(shù)據(jù),從而實(shí)現(xiàn)事務(wù)的串行執(zhí)行。這意味著在同一時(shí)間只有一個(gè)事務(wù)能夠?qū)ν环輸?shù)據(jù)進(jìn)行操作。所以可以說(shuō),MySQL的串行化隔離級(jí)別在數(shù)據(jù)行級(jí)別上進(jìn)行的,具體的粒度取決于事務(wù)操作的數(shù)據(jù)范圍。

7.3 串行化機(jī)制是不是也可以在客戶端實(shí)現(xiàn),比如消息隊(duì)列單線程消費(fèi)的場(chǎng)景

是的,串行化機(jī)制并不局限于數(shù)據(jù)庫(kù),它可以應(yīng)用在任何需要并發(fā)控制的場(chǎng)景。比如在消息隊(duì)列中,你可以讓每個(gè)消費(fèi)者線程處理一部分消息,使得不同的消費(fèi)者線程處理的消息不會(huì)有交集,這樣就可以達(dá)到類似于串行化的效果。但需要注意的是,這種方法依賴于消息的分配策略,如果消息不能均勻地分配給每個(gè)消費(fèi)者線程,那么消費(fèi)者線程可能會(huì)出現(xiàn)空閑,導(dǎo)致系統(tǒng)的吞吐量下降。

8 數(shù)據(jù)庫(kù)事物有哪些特性,分別是由什么進(jìn)行保證和實(shí)現(xiàn)?(字節(jié)后端一面)

8.1 數(shù)據(jù)庫(kù)事務(wù)具有以下四個(gè)關(guān)鍵特性,通常稱為ACID特性:

  1. 原子性(Atomicity):原子性確保事務(wù)是一個(gè)不可分割的操作單元,要么全部執(zhí)行,要么全部不執(zhí)行。如果一個(gè)事務(wù)中的任何一部分失敗,整個(gè)事務(wù)將被回滾到初始狀態(tài),以確保數(shù)據(jù)的一致性。原子性通常由數(shù)據(jù)庫(kù)管理系統(tǒng)(DBMS)來(lái)實(shí)現(xiàn),使用事務(wù)日志和回滾機(jī)制來(lái)確保。

  2. 一致性(Consistency):一致性確保事務(wù)將數(shù)據(jù)庫(kù)從一個(gè)一致狀態(tài)轉(zhuǎn)變?yōu)榱硪粋€(gè)一致狀態(tài)。這意味著事務(wù)執(zhí)行前后數(shù)據(jù)庫(kù)必須滿足一定的完整性約束和規(guī)則,以確保數(shù)據(jù)的完整性。一致性通常由應(yīng)用程序和數(shù)據(jù)庫(kù)約束來(lái)保證。

  3. 隔離性(Isolation):隔離性確保同時(shí)運(yùn)行多個(gè)事務(wù)時(shí),每個(gè)事務(wù)都感覺(jué)就像它是唯一運(yùn)行的,不會(huì)受到其他事務(wù)的影響。隔離性通過(guò)使用鎖定機(jī)制、多版本控制或其他并發(fā)控制技術(shù)來(lái)實(shí)現(xiàn),以防止數(shù)據(jù)競(jìng)爭(zhēng)和不一致的讀取。

  4. 持久性(Durability):持久性確保一旦事務(wù)成功提交,其結(jié)果將永久保存在數(shù)據(jù)庫(kù)中,即使系統(tǒng)崩潰或斷電也不會(huì)丟失。持久性通常通過(guò)將事務(wù)日志寫入非易失性存儲(chǔ)(如硬盤)來(lái)實(shí)現(xiàn)。

8.2 四大特性的實(shí)現(xiàn)

這些ACID特性共同確保了事務(wù)的可靠性和數(shù)據(jù)完整性。在數(shù)據(jù)庫(kù)管理系統(tǒng)內(nèi)部,使用日志記錄和恢復(fù)機(jī)制來(lái)實(shí)現(xiàn)這些特性。具體實(shí)現(xiàn)方法可以有所不同,但通常涉及以下步驟:

  • 事務(wù)日志(Transaction Log):數(shù)據(jù)庫(kù)將事務(wù)的所有更改(插入、更新、刪除)記錄到事務(wù)日志中,以便在需要時(shí)進(jìn)行恢復(fù)。這包括在提交事務(wù)之前記錄所有更改,以確保原子性和持久性。

  • 并發(fā)控制(Concurrency Control):為了實(shí)現(xiàn)隔離性,數(shù)據(jù)庫(kù)管理系統(tǒng)使用鎖定、時(shí)間戳或多版本控制等技術(shù)來(lái)管理同時(shí)運(yùn)行的事務(wù)。這確保了每個(gè)事務(wù)不會(huì)干擾其他事務(wù)的操作。

  • 回滾(Rollback):如果事務(wù)中的任何一部分失敗或發(fā)生錯(cuò)誤,數(shù)據(jù)庫(kù)系統(tǒng)將使用事務(wù)日志中的信息將事務(wù)回滾到之前的狀態(tài),以確保原子性。

  • 持久性保證(Durability Guarantee):數(shù)據(jù)庫(kù)管理系統(tǒng)確保將事務(wù)日志中的更改寫入持久性存儲(chǔ),如硬盤。這確保了即使系統(tǒng)崩潰或斷電,事務(wù)的結(jié)果也不會(huì)丟失。

總之,ACID特性是數(shù)據(jù)庫(kù)事務(wù)的關(guān)鍵特性,通過(guò)數(shù)據(jù)庫(kù)管理系統(tǒng)的內(nèi)部機(jī)制和恢復(fù)策略來(lái)實(shí)現(xiàn)和保證。這些特性確保了數(shù)據(jù)的可靠性和完整性,使數(shù)據(jù)庫(kù)在面臨各種故障和并發(fā)訪問(wèn)時(shí)仍然能夠保持一致性。

8.3 undo log、redo log以及bin log日志對(duì)事務(wù)的ACID的保證?

8.4 數(shù)據(jù)庫(kù)隔離級(jí)別:

數(shù)據(jù)庫(kù)隔離級(jí)別定義了不同事務(wù)之間的可見性和互操作性。SQL標(biāo)準(zhǔn)定義了四個(gè)隔離級(jí)別,從最低到最高分別是Read Uncommitted、Read Committed、Repeatable Read和Serializable。

  1. Read Uncommitted:允許一個(gè)事務(wù)讀取另一個(gè)事務(wù)未提交的修改,是最低的隔離級(jí)別,通常不建議使用,因?yàn)榭赡軐?dǎo)致臟讀和不可重復(fù)讀。

  2. Read Committed:保證一個(gè)事務(wù)不會(huì)讀取到另一個(gè)未提交事務(wù)的修改。這是大多數(shù)數(shù)據(jù)庫(kù)系統(tǒng)的默認(rèn)隔離級(jí)別。

  3. Repeatable Read:確保一個(gè)事務(wù)在執(zhí)行期間看到的數(shù)據(jù)保持一致,即使其他事務(wù)在此期間進(jìn)行了插入或修改。這是MySQL的默認(rèn)隔離級(jí)別。

  4. Serializable:提供最高的隔離級(jí)別,確保事務(wù)之間不存在并發(fā)問(wèn)題,但性能通常較低。

8.5 RC和RR隔離級(jí)別的MVCC機(jī)制區(qū)別:

  1. RC(Read Committed)隔離級(jí)別:在RC隔離級(jí)別下,事務(wù)可以讀取已提交事務(wù)的數(shù)據(jù),但不能讀取未提交事務(wù)的數(shù)據(jù)。MVCC通過(guò)在內(nèi)部為每個(gè)事務(wù)創(chuàng)建快照來(lái)實(shí)現(xiàn)這一點(diǎn),以確保一個(gè)事務(wù)不會(huì)讀取到另一個(gè)事務(wù)未提交的修改。

  2. RR(Repeatable Read)隔離級(jí)別:在RR隔離級(jí)別下,事務(wù)可以讀取已提交事務(wù)的數(shù)據(jù),并且在整個(gè)事務(wù)期間都不會(huì)看到其他事務(wù)的插入、更新或刪除操作的結(jié)果。MVCC也在這里發(fā)揮作用,但它在事務(wù)開始時(shí)創(chuàng)建快照,并在整個(gè)事務(wù)期間保持不變,以確保數(shù)據(jù)的一致性。

8.6 在RR隔離級(jí)別下避免幻讀(MVCC + Next-Key Locking):

幻讀是指在一個(gè)事務(wù)中執(zhí)行相同的查詢,但由于其他事務(wù)插入或刪除了符合查詢條件的行,導(dǎo)致結(jié)果集不一致的情況。在RR隔離級(jí)別下,為了避免幻讀,數(shù)據(jù)庫(kù)使用MVCC和Next-Key Locking機(jī)制來(lái)處理。

  • MVCC:MVCC通過(guò)創(chuàng)建事務(wù)的快照來(lái)確保查詢不受其他事務(wù)的影響。在RR隔離級(jí)別下,查詢會(huì)使用事務(wù)開始時(shí)的快照,這意味著在查詢期間其他事務(wù)的插入、更新和刪除不會(huì)影響查詢結(jié)果。

  • Next-Key Locking:Next-Key Locking是一種鎖機(jī)制,它在RR隔離級(jí)別下用于避免幻讀。當(dāng)一個(gè)事務(wù)執(zhí)行SELECT語(yǔ)句時(shí),Next-Key Locking會(huì)鎖定查詢范圍內(nèi)的所有記錄,并且還會(huì)鎖定可能在查詢之后被插入的記錄的"間隙",以防止幻讀。這確保了在查詢期間其他事務(wù)無(wú)法插入滿足查詢條件的新記錄。

綜上所述,在RR隔離級(jí)別下,通過(guò)MVCC和Next-Key Locking機(jī)制,數(shù)據(jù)庫(kù)確保了查詢的一致性和避免了幻讀問(wèn)題。MVCC提供了快照來(lái)保持查詢的一致性,而Next-Key Locking則確保了查詢期間的數(shù)據(jù)不會(huì)受到其他事務(wù)的插入操作的干擾。這兩個(gè)機(jī)制結(jié)合起來(lái),為RR隔離級(jí)別下的數(shù)據(jù)一致性提供了保障。文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-678699.html

8.7 只使用 Next-Key Locking,能保證避免幻讀嘛, Next-key不是會(huì)鎖住間隙和行嘛,是行鎖和間隙鎖的結(jié)合,這樣應(yīng)該不允許其他事務(wù)修改了吧,然后是不是就能保證幻讀了?但是能保證可重復(fù)讀嘛?

8.8

到了這里,關(guān)于mysql基礎(chǔ)面經(jīng)之三:事務(wù)的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • mysql數(shù)據(jù)庫(kù)之事務(wù)

    mysql數(shù)據(jù)庫(kù)之事務(wù)

    總的來(lái)說(shuō),事務(wù) 就是一種機(jī)制,包含了一組操作命令,會(huì)作為一個(gè)不可分割的整體,要么都執(zhí)行,要么都不執(zhí)行 ,它保證了數(shù)據(jù)庫(kù)的安全可靠性 是一種機(jī)制、一個(gè)操作序列,包含了一組數(shù)據(jù)庫(kù)操作命令,并且把所有的命令作為一個(gè)整體一起向系統(tǒng)提交或撤銷操作請(qǐng)求,即這

    2024年02月09日
    瀏覽(21)
  • 簡(jiǎn)單認(rèn)識(shí)MySQL數(shù)據(jù)庫(kù)事務(wù)

    簡(jiǎn)單認(rèn)識(shí)MySQL數(shù)據(jù)庫(kù)事務(wù)

    MySQL 事務(wù)主要用于處理操作量大,復(fù)雜度高的數(shù)據(jù)。比如說(shuō),在戰(zhàn)艦登錄系統(tǒng)中, 要?jiǎng)h除一艘戰(zhàn)艦,即需要?jiǎng)h除戰(zhàn)艦的基本資料,又需要?jiǎng)h除和該戰(zhàn)艦相關(guān)的信息,如艦長(zhǎng), 登記船員等等。這樣,這些數(shù)據(jù)庫(kù)操作語(yǔ)句就構(gòu)成一個(gè)事務(wù)! ●事務(wù)是一種機(jī)制、一個(gè)操作序列,包

    2024年02月16日
    瀏覽(24)
  • 【Mysql數(shù)據(jù)庫(kù) 第13章】MySQL的事務(wù)、事務(wù)的隔離級(jí)別、事務(wù)的保存點(diǎn)

    ??Spring中的創(chuàng)建對(duì)象的三種方式、第三方資源配置管理詳細(xì)描述及使用(XML版完結(jié)篇) ??Spring中的bean的配置、作用范圍、生命周期詳細(xì)描述及使用(XML版上篇) ??

    2023年04月20日
    瀏覽(21)
  • 【MySQL數(shù)據(jù)庫(kù) | 第十五篇】事務(wù)

    【MySQL數(shù)據(jù)庫(kù) | 第十五篇】事務(wù)

    ? ? 目錄 ? ?前言: ?介紹事務(wù): ?控制事務(wù): ?事務(wù)四大特性: ?并發(fā)事務(wù)問(wèn)題: ?事務(wù)隔離級(jí)別: 總結(jié): ? 這章我們將進(jìn)入到MySQL基礎(chǔ)篇的最后一章:事務(wù),希望大家可以堅(jiān)持下去,跟著我一起走完MySQL的學(xué)習(xí)之旅。 MySQL是一種關(guān)系型數(shù)據(jù)庫(kù)管理系統(tǒng),支持事務(wù)管理。 事

    2024年02月08日
    瀏覽(23)
  • 【Spring/MySQL數(shù)據(jù)庫(kù)系列】數(shù)據(jù)庫(kù)事務(wù)的特點(diǎn)與隔離級(jí)別

    【Spring/MySQL數(shù)據(jù)庫(kù)系列】數(shù)據(jù)庫(kù)事務(wù)的特點(diǎn)與隔離級(jí)別

    ?? 前面的話 ?? 本文已經(jīng)收錄到《Spring框架全家桶系列》專欄,本文將介紹有關(guān)數(shù)據(jù)庫(kù)事務(wù)的特點(diǎn)以及隔離級(jí)別。 ??博客主頁(yè):未見花聞的博客主頁(yè) ??歡迎關(guān)注??點(diǎn)贊??收藏??留言?? ??本文由 未見花聞 原創(chuàng), CSDN 首發(fā)! ??首發(fā)時(shí)間:??2023年5月20日?? ??堅(jiān)

    2024年02月05日
    瀏覽(25)
  • Go 語(yǔ)言實(shí)現(xiàn) MySQL 數(shù)據(jù)庫(kù)事務(wù)

    MySQL事務(wù)是指一組數(shù)據(jù)庫(kù)操作,它們被視為一個(gè)邏輯單元,并且要么全部成功執(zhí)行,要么全部回滾(撤銷)。事務(wù)是數(shù)據(jù)庫(kù)管理系統(tǒng)提供的一種機(jī)制,用于確保數(shù)據(jù)的一致性和完整性。 事務(wù)具有以下特性(通常由ACID原則定義): 原子性(Atomicity):事務(wù)中的所有操作要么全

    2024年02月08日
    瀏覽(21)
  • C# 從代碼入門 Mysql 數(shù)據(jù)庫(kù)事務(wù)

    C# 從代碼入門 Mysql 數(shù)據(jù)庫(kù)事務(wù)

    在業(yè)務(wù)開發(fā)中,使用數(shù)據(jù)庫(kù)事務(wù)是必不可少的。而開發(fā)中往往會(huì)使用各種 ORM 執(zhí)行數(shù)據(jù)庫(kù)操作,簡(jiǎn)化代碼復(fù)雜度,不過(guò),由于各種 ORM 的封裝特性,開發(fā)者的使用方式也不一樣,開發(fā)者想要了解 ORM 對(duì)事務(wù)做了什么處理是比較難的。因此,本文介紹數(shù)據(jù)庫(kù)事務(wù)基礎(chǔ)、Ado.net 事務(wù)

    2024年02月04日
    瀏覽(21)
  • 初識(shí)mysql數(shù)據(jù)庫(kù)之事務(wù)的概念及操作

    初識(shí)mysql數(shù)據(jù)庫(kù)之事務(wù)的概念及操作

    目錄 一、數(shù)據(jù)庫(kù)多客戶端訪問(wèn)問(wèn)題 1. 數(shù)據(jù)庫(kù)的CURD無(wú)限制帶來(lái)的問(wèn)題 2. 如何解決CURD導(dǎo)致的問(wèn)題 二、事務(wù)的概念 1. 什么是事務(wù) 2. 事務(wù)的四個(gè)屬性 3. mysql對(duì)事務(wù)的管理 4. 為什么會(huì)有事務(wù) 5. 事務(wù)的版本支持 三、事務(wù)的操作 1. 事務(wù)提交方式 2. 事務(wù)操作的準(zhǔn)備工作 2.1 數(shù)據(jù)庫(kù)是網(wǎng)

    2024年02月15日
    瀏覽(25)
  • 【MySQL】一文帶你了解數(shù)據(jù)庫(kù)索引與事務(wù)

    數(shù)據(jù)庫(kù)索引是一種提高數(shù)據(jù)庫(kù)查詢效率的數(shù)據(jù)結(jié)構(gòu)。它可以快速地定位和訪問(wèn)數(shù)據(jù)庫(kù)中的數(shù)據(jù),從而大大提高數(shù)據(jù)庫(kù)查詢的速度和效率。數(shù)據(jù)庫(kù)索引可以根據(jù)不同的查詢需求構(gòu)造多個(gè)索引,以最大化提高查詢效率。 數(shù)據(jù)庫(kù)索引基于各種字段來(lái)創(chuàng)建,在查詢時(shí)可以通過(guò)索引直接

    2024年02月09日
    瀏覽(82)
  • 【后端面經(jīng)-數(shù)據(jù)庫(kù)】MySQL的事務(wù)隔離級(jí)別簡(jiǎn)介

    目錄 0. 事務(wù)的概念 1. 三類問(wèn)題 2. 事務(wù)隔離級(jí)別 3. 操作指令 4. 總結(jié) 5. 參考博文 事務(wù)指的是一連串的集中操作指令,一個(gè)事務(wù)的執(zhí)行必須執(zhí)行完所有的動(dòng)作才能算作執(zhí)行結(jié)束。事務(wù)具有四個(gè)特點(diǎn),簡(jiǎn)記作 ACID : A -Atomicity: 原子性,事務(wù)的執(zhí)行必須保證所有的動(dòng)作都執(zhí)行完畢;

    2024年02月08日
    瀏覽(32)

覺(jué)得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包