亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術文章
文章詳情頁

mysql innodb的重要組件匯總

瀏覽:26日期:2023-10-08 13:19:27

innodb包涵如下幾個組件

一、innodb_buffer_pool:

它主要用來緩存數據與索引(準確的講由于innodb中的表是由聚集索引組織的,所以數據只不是過主鍵這個索引的葉子結點)。

二、change buffer:

1如果更新語句要更新二級索引的記錄,但是記錄所在的頁面這個里面并沒有在innodb_buffer_pool中,innodb會把這個對二級索引

面頁的更新動作緩存到innodb_buffer_pool的一個特定區域(change buffer);等到之后如果有別的事務B要去讀這個二級索引頁的時候,

由于頁面還沒有,在innodb_buffer_pool中所以B事務會先把頁面載入innodb_buffer_pool,這樣子目標頁面就算進入innodb_buffer_pool了,

接下來就可根據change buffer的內容來更新索引頁面了。這樣可以節約IO操作,提高性能。

2當然別的刷新機(把change buffer中的變更落盤)制也是有的,比如說當mysql比較空閑的時候,slow shutdown 的過程當中也會刷新

change buffer中的內容到磁盤

3監控change buffer

show engine innodb status;-------------------------------------INSERT BUFFER AND ADAPTIVE HASH INDEX-------------------------------------Ibuf: size 1, free list len 0, seg size 2, 0 mergesmerged operations: insert 0, delete mark 0, delete 0discarded operations: insert 0, delete mark 0, delete 0Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)Hash table size 34679, node heap has 0 buffer(s)0.00 hash searches/s, 0.00 non-hash searches/s---LOG---Log sequence number 24635311Log flushed up to 24635311Pages flushed up to 24635311Last checkpoint at 246353020 pending log flushes, 0 pending chkp writes10 log i/o’s done, 0.00 log i/o’s/second

三、自適應hash索引:

1如果表中的某些行會非常頻繁的用到,由于innodb表是B+樹組織起來的這一特性,最好的情況下innodb也是先讀索引頁,再讀數據頁,然后

找到數據;hash索引是用B+樹索引的hash為鍵,以B+樹索引的值(指向的頁面)為值的;由于有了hash索引的引入,innodb可以通過計算索引的hash

值就直接定位到數據所在的頁面;所以對于非范圍查找的情況下hash索引這樣的處理方式是有優勢的。

2要想innodb能用上bash索引還要有幾個條件1、innodb_adaptive_hash_index=1 這樣innodb就會啟用hash索引了;然而這只是完成了一半,

innodb并不是為表中的所有行建立hash索引的,只是表中頻繁訪問的行才會為它建立hash索引,為冷數據建立hash索引是一種浪費;

innodb_adaptive_hash_index_parts 可以設置hash索引的分區,這種可以提升并發度。

四、redo log buffer:

redo log buffer 中的內容會被定期的刷新到磁盤,如果redo log buffer 設置的比較大它有利于mysql對大事務的處理,原因在于在大事務的處理中

可以把redo 寫入到redo log buffer 而不是寫入到磁盤,由于內存比磁盤快,所以大事務的處理速度上也會比較快;也就是說redo log buffer 比較大

的情況下在commit 之前可以減少一些沒有必要的刷磁盤操作。

五、系統表空間:

innodb 系統表空間中包涵如下內容:innodb 數據字典,一些存儲區域如 doublewritechangebufferundolog ,如果innodb_file_per_table

沒有打開那么那么用戶建的表就會保存到這個系統表空間中,這種情況下系統表空間也就可以看面它包涵共享表空間了。

以上就是mysql innodb的重要組件匯總的詳細內容,更多關于mysql innodb組件的資料請關注好吧啦網其它相關文章!

標簽: MySQL 數據庫
相關文章:
主站蜘蛛池模板: 亚洲国产精品欧美日韩一区二区 | 欧美人在线一区二区三区 | 国产欧美精品午夜在线播放 | 久久久精品久久久久久 | 黄网站在线观看高清免费 | 欧美一区二区三区四区在线观看 | 国产一区二区免费福利片 | 国产亚洲福利 | 99热这里只有精品国产99热门精品 | 美女被靠视频免费网站不需要会员 | 日本中文不卡 | 经典香港一级a毛片免费看 春水堂在线 | 国产草逼视频 | www.大香 | 久久久久久久综合狠狠综合 | 国产91久久久久久久免费 | 丁香婷婷成人 | 国产日韩欧美在线一二三四 | 国产视频三级 | 看黄色的网址 | 欧美另类亚洲一区二区 | 欧美毛片免费 | 日本中文字幕不卡在线一区二区 | 毛片特黄| 爱爱免费小视频 | 和日本免费不卡在线v | 精品小视频 | 亚洲成人免费网站 | 久久九九精品一区二区 | 免费一级欧美大片视频在线 | 免费视频一区二区性色 | 用力插视频 | 免费国产一区二区三区 | 激情视频网站在线观看 | 久草在线免费播放 | 国产精品欧美亚洲韩国日本不卡 | 国内一级特黄女人精品片 | 可以直接看的黄色网址 | 亚洲国产成人精品一区二区三区 | 奥田咲在线播放 | 国产主播福利精品一区二区 |