亚洲 欧美 日韩 国产综合 在线-最大胆裸体人体牲交免费-宅男666在线永久免费观看-色八区人妻在线视频-亚洲色播永久网址大全-亚洲欧美日本久久综合网站

信息薈萃
    你的位置:首頁 > 信息薈萃

    突然停電了,我的數(shù)據(jù)還沒保存到數(shù)據(jù)庫……

    來源:譽澄智能 2021/1/5 8:53:47??????點擊:

    最近看到全國各地都在“拉閘限電”,嚇的我趕緊登上后臺服務器,看了看MySQL數(shù)據(jù)庫是否有問題,還好一切如常,也沒聽說北京有停電通知,好歹松了一口氣。

    微信圖片_20210105084913.jpg

    忽然想到一個問題,萬一數(shù)據(jù)庫正在執(zhí)行寫入操作,突然斷電了,會是怎么樣的呢?


    從MySQL V5.5開始,InnoDB成為了默認的存儲引擎。InnoDB中將頁作為磁盤管理的最小單位,數(shù)據(jù)校驗和數(shù)據(jù)寫入到磁盤都是以頁為單位操作的,通常情況下默認每個頁的大小為16KB。但由于文件系統(tǒng)對數(shù)據(jù)頁(16KB)的寫入多數(shù)情況下都不是原子操作,意味著當服務器斷電時可能只寫了部分數(shù)據(jù)。


    一個數(shù)據(jù)頁的大小是16K,假設在把內(nèi)存中的臟頁(頁中有記錄被更新過)寫到磁盤時,寫了2K突然掉電,則前2K數(shù)據(jù)是新的,后14K是舊的,那么磁盤中的這個數(shù)據(jù)頁就是不完整的,是一個壞掉的數(shù)據(jù)頁。


    可能有經(jīng)驗的DBA會想到,如果發(fā)生寫失效,可以利用redo log進行恢復。


    這也許能夠解決部分問題,但redo log中記錄的是對頁的物理操作,redo log只能加上舊的、校檢完整的數(shù)據(jù)頁恢復一個臟塊,不能修復壞掉的數(shù)據(jù)頁。如果數(shù)據(jù)頁本身已經(jīng)發(fā)生了損壞,再對其進行重做是沒有意義的。

    那么就沒有其它辦法了嗎?當然不是!這個時候double write就閃亮登場了。


    開啟了Double write(兩次寫/雙寫)后,在將內(nèi)存中的臟頁寫入到磁盤之前,會先保存該頁的副本,當磁盤中的數(shù)據(jù)頁壞掉時,可以利用副本來還原該頁,再執(zhí)行重做,這就完美的解決了redo log無法修復壞頁的問題啦。


    Double write由兩部分組成,一部分是內(nèi)存中的double write緩存,共有128個頁(2MB);另一部分是磁盤上共享表空間中連續(xù)的128個頁(2MB)。


    下面我們來看一下將數(shù)據(jù)頁寫入磁盤的過程:

    1 拷貝:當一系列機制觸發(fā)數(shù)據(jù)頁緩沖池中的臟頁(圖中黃色塊)刷新時,并不直接寫入磁盤數(shù)據(jù)文件中,而是先拷貝到內(nèi)存中的double write緩存中;

    2 順序?qū)懀?/span>接著將double write緩存區(qū)中的數(shù)據(jù)分兩次順序?qū)懭氲酱疟P的共享表空間中,每次寫入1MB。共享表空間中的double write頁是連續(xù)存儲的,采用順序?qū)懙姆绞侥軌蚝苎杆俚耐瓿蓪懟夭僮鳎_銷較小。

    3 離散寫:將double write緩存區(qū)中的臟頁數(shù)據(jù)寫入到實際的各個表空間文件。當臟頁里的數(shù)據(jù)完全寫回磁盤后,即可將double write中的頁標記為可覆蓋。


    如果在將臟頁刷新回磁盤的過程中發(fā)生崩潰,在恢復時,InnoDB存儲引擎可以從共享表空間中的double write中找到該頁的最近的一個副本,將其復制到表空間文件,再利用redo log進行重做,就完成了恢復過程。


    因存在副本,媽媽再也不用擔心我的電腦突然斷電了!


    有人可能會問,在寫redo log的時候是否需要double write支持呢?


    答案是不需要的,因為redo log在往磁盤中記錄信息的時候是以512字節(jié)為單位進行寫入的,而磁盤IO的最小單位恰巧也是512字節(jié),那么就無所謂數(shù)據(jù)損壞啦。


    有人可能會覺得開啟double write會帶來性能的損耗,其實呢,內(nèi)存中的double write緩存對應的磁盤共享表空間的文件是連續(xù)存儲的,寫入時是順序?qū)憽m樞驅(qū)懙男阅芊浅8撸晕奚稽c性能來保證數(shù)據(jù)頁的完整是非常有必要的!


    主站蜘蛛池模板: 99偷拍视频精品一区二区| 欧美综合在线激情专区| 欧美77| 在线欧美日韩| 久久国产精品亚洲艾草网| 欧美一级久久| 国产精品久久久久久久免费看 | 99re在线视频| 精品国产一区二区三区无码| 99精品一区二区| 狠狠亚洲婷婷综合色香五月排名| 日韩视频中文字幕| 亚洲人成无码网www| 亚洲一区二区中文字幕| 日日摸日日碰人妻无码| 五月婷婷久| 欧美视频不卡| 一性一交一口添一摸视频| 欧美日韩专区国产精品| 理论片87福利理论电影| 久久中文视频| 日产乱码卡1卡2卡三免费| 艳妇乳肉豪妇荡乳av无码福利| 午夜精品久久久久久| 人妻少妇久久久久久97人妻| 国产美女久久| 奇米影视色| 日韩av无码中文字幕| 国产91一区二这在线播放| 国产高清精品在线| 久久久99久久久国产自输拍| 开心伊人| 久久综合亚洲| 九九久久精品国产| 成人在线一区二区三区| 小凤仙的故事 电视剧| 欧美日韩人妻精品一区二区三区 | 激情五月六月婷婷| 精品一区二区成人精品| 一本大道伊人av久久乱码| 色天天久久|