mysql 因併發操作導致的丟失更新

2021-08-17 10:58:58 字數 362 閱讀 7441

丟失更新產生的情況

1. 事務t1查詢出一行資料,並顯示給user1。

2. 事務t2也查詢該行資料,並顯示給user2。

3. user1修改這行記錄,更新資料庫並提交。

4. user2修改這行記錄,更新資料庫並提交。

在這個過程中,使用者user1的修改更新操作「丟失」了。

如何避免

要避免丟失更新,需要讓這種情況下的事務變成序列操作,避免併發操作。在上述四種的第1種情況下,對使用者的讀取的記錄加上乙個排它鎖,同樣,發生第2種情況下的操作時,使用者也需要加乙個排它鎖。這樣,第2部就必須等待第1、3步完成。這樣就避免了丟失更新。

EFK上因雙引號未轉義導致日誌丟失問題

最近查閱生產環境日誌後發現,有部分日誌在kibana上查詢不到,所以登入到pod上檢查了下,發現日誌內容是這樣的 credit null,growth null,tag null stack trace 在msg中的內容中包含了雙引號,所以json解析的時候失敗了,因此日誌也就沒辦法上傳到日誌平台。...

raid5因兩塊硬碟掉線導致的資料丟失恢復過程分享

全文鏈結 1.故障描述 本案例是hp p2000的儲存vmware exsi虛擬化平台,由raid 5由10塊lt硬碟組成,其中6號盤是熱備盤,由於故障導致raid 5磁碟陣列的兩塊盤掉線,表現為兩塊硬碟亮黃燈。經使用者方維護人員檢測,故障硬碟應為物理故障,表現為 序列號無法讀取,在sas擴充套件卡...

mysql併發操作 mysql併發控制原理知識點

mysql是主流的開源關係型資料庫,提供高效能的資料儲存服務。在做後端開發時,有時會遇到效能瓶頸,這些瓶頸有時並不是來自應用本身,而是來自資料庫層面。所以所以掌握mysql的一些底層原理有助於我們更好地理解mysql,對mysql進行效能調優,從而開發高效能的後端服務。1 mysql的邏輯框架 my...