17.6.1. mysql簇的啟動階段
本節介紹了啟動簇時涉及的步驟。
有數種不同的啟動型別和模式,如下所述:
·首次啟動:在所有節點上與乾淨的檔案系統一起啟動簇。這或是出現在首次啟動簇時,或是使用「--initial」選項
重啟簇時。
·系統重啟:簇啟動並讀取儲存在資料節點中的資料。這出現在下述情況下:使用完後關閉了簇,並希望從簇的停止點恢復簇操
作時。·
·首次節點重啟:與節點重啟類似,差別在於將再次初始化節點,並與乾淨的檔案系統一起啟動。
啟動之前,必須對每個節點進行初始化操作(ndbd程序)。這包括下述步驟:
1.
獲取節點id。
2.
獲取配置資料。
3.
為節點間的通訊分配埠。
4.
根據從配置檔案獲得的設定分配記憶體。
一旦完成了對各節點的初始化操作,將進入簇啟動程序。在該程序中,簇將經歷下述階段:
·階段0
清理簇檔案系統。僅當使用「--initial」選項啟動簇時,才會出現。
·階段1
建立簇連線,建立節點間的通訊。啟動簇「心跳」機制。
·階段2
選舉仲裁程式節點。
如果這是系統重啟階段,簇將確定最近的可恢復全域性檢查點。
·階段3
該階段包括眾多內部簇變數的初始化。
·階段4
對於初始啟動或初始節點重啟,將建立redo日誌檔案。這類檔案的數目等於nooffragmentlogfiles/
對於系統重啟:
o
讀取方案。
o
從本地檢查點和undo日誌讀取資料。
o
應用所有的redo資訊,直至到達最近的可恢復檢查點為止。
對於節點重啟,找到redo日誌的末尾。
·階段5
如果這是首次啟動,將建立systab_0和ndb$events內部系統表。
對於節點重啟或首次節點重啟:
o
節點包含在事務處理操作中。
o
將節點的方案與主伺服器的方案進行比較,並與其同步。
o
對所收到的、來自本節點所在節點組內其他節點的、insert形式的資料進行同步。
o
在任何情形下,等待由仲裁程式判定的本地檢查點操作的完成。
·階段6
更新內部變數。
·階段7
更新內部變數。
·階段8
在系統重啟中,重建所有的索引。
·階段9
更新內部變數。
·階段10
在節點重啟或首次節點重啟的這一階段,api可能會連線到節點,並接收事件。
·階段11
在節點重啟或首次節點重啟的這一階段,將事件傳遞任務提交給加入簇的節點。新加入的節點負責將
其主要資料傳遞給訂方。
對於首次啟動或系統重啟,一旦該程序完成,將啟用事務處理功能。對於節點重啟或首次節點重啟,啟動程序的完成意味著
節點現在能夠成為事務協調程式。
mysql 聚簇索引表 Mysql的聚簇索引
聚簇索引並不是一種單獨的索引型別,而是一種資料儲存方式。innodb的聚簇索引實際上是在同乙個結構中儲存了b tree索引和資料行。乙個表只能有乙個聚簇索引。innodb中,葉子頁包含了行的全部資料,但是節點頁只包含了索引列。innodb通過主鍵聚集資料。優點 1.可以把相關資料儲存在一起。例如實現...
mysql 聚簇索引例項 MySQL聚簇索引
mysql作為迭代了很多個版本的資料庫。在資料庫的索引上實現了很多的優化版本,從一開始的只允許乙個表有乙個列為索引值,到目前版本可支援多個列建立索引值,更多關於索引優化版本的描述,以後有機會筆者再寫一篇文章。本文主要介紹索引當中的聚簇索引。mysql官方對聚簇索引的定義是,聚簇索引並不是一種單獨的索...
mysql聚簇索引設定 Mysql 聚簇索引
整體概述 1.innodb的主索引檔案上 直接存放該行資料,稱為聚簇索引,次索引指向對主鍵的引用 2.myisam中,主索引和次索引,都指向物理行 磁碟位置 哈哈,說了兩句貌似聽不懂的話。一。通俗解釋 我們可以這麼理解 聚簇索引 innodb 索引的葉節點就是資料節點,下邊實打實有資料。非聚簇索引 ...