MySQL集群NDB7.5有哪些知識點(diǎn)-創(chuàng)新互聯(lián)

這篇文章主要介紹“MySQL集群NDB 7.5有哪些知識點(diǎn)”,在日常操作中,相信很多人在MySQL集群NDB 7.5有哪些知識點(diǎn)問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”MySQL集群NDB 7.5有哪些知識點(diǎn)”的疑惑有所幫助!接下來,請跟著小編一起來學(xué)習(xí)吧!

創(chuàng)新互聯(lián)自2013年創(chuàng)立以來,先為鐵力等服務(wù)建站,鐵力等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為鐵力企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

MySQL Cluster是在shared-nothing系統(tǒng)中開啟in-memory數(shù)據(jù)庫集群功能的一項(xiàng)技術(shù)。shared-nothing架構(gòu)可以使系統(tǒng)以廉價(jià)的硬件工作,對硬件和軟件的需求很小。

MySQL集群被設(shè)計(jì)成沒有任何單點(diǎn)故障。在一套shared-nothing系統(tǒng)中,每個(gè)節(jié)點(diǎn)都有自己的內(nèi)存和硬盤,像共享網(wǎng)絡(luò)、網(wǎng)絡(luò)問卷系統(tǒng)和SAN存儲這些共享存儲機(jī)制不被MySQL集群推薦和支持。

MySQL集群通過一個(gè)稱為NDB的內(nèi)存集群存儲引擎,和標(biāo)準(zhǔn)的MySQL服務(wù)器集成在一起。NDB是Network DataBase的縮寫。MySQL集群是MySQL服務(wù)器和NDB存儲引擎的結(jié)合。

一套MySQL集群包含一系列的電腦主機(jī),每臺主機(jī)運(yùn)行一個(gè)或多個(gè)進(jìn)程;這些進(jìn)程被稱為節(jié)點(diǎn),包含MySQL服務(wù)器(用于訪問NDB的數(shù)據(jù))、數(shù)據(jù)節(jié)點(diǎn)(用于存儲數(shù)據(jù))、一個(gè)或多個(gè)管理服務(wù)器、其他定制的數(shù)據(jù)訪問程序。這些節(jié)點(diǎn)的關(guān)系圖如下:

MySQL集群NDB 7.5有哪些知識點(diǎn) 

集群中的節(jié)點(diǎn)可以被停止或重啟,也可以再次加入集群中。

NDBCLUSTER(也稱為NDB)是一個(gè)提供高可用性和數(shù)據(jù)永久化的內(nèi)存存儲引擎。

NDBCLUSTER可以通過配置一些參數(shù)實(shí)現(xiàn)故障切換和負(fù)載均衡。需要注意的是,在MySQL集群中,一個(gè)節(jié)點(diǎn)是指一臺主機(jī),而是一個(gè)進(jìn)程;可以在一臺主機(jī)上運(yùn)行多個(gè)節(jié)點(diǎn)。

在一套MySQL集群配置中,至少有三個(gè)節(jié)點(diǎn):

管理節(jié)點(diǎn):這個(gè)節(jié)點(diǎn)的角色是管理集群中的其他節(jié)點(diǎn),提供配置數(shù)據(jù),啟動停止節(jié)點(diǎn)和執(zhí)行備份功能。因?yàn)檫@個(gè)節(jié)點(diǎn)管理其他節(jié)點(diǎn)的配置信息,在集群中應(yīng)該首先啟動這個(gè)節(jié)點(diǎn)。通過ndb_mgmd命令啟動MGM節(jié)點(diǎn)。

數(shù)據(jù)節(jié)點(diǎn):這種類型的節(jié)點(diǎn)存儲集群的數(shù)據(jù)。MySQL集群中的表通常被保存在內(nèi)存中而不是磁盤上(這是我們稱呼MySQL集群為內(nèi)存數(shù)據(jù)庫的原因)。然而,一些MySQL集群的數(shù)據(jù)也可以儲存在磁盤上。

SQL節(jié)點(diǎn):這各節(jié)點(diǎn)用來訪問集群數(shù)據(jù)。在MySQL集群中,SQL節(jié)點(diǎn)是使用NDBCLUSTER存儲引擎的傳統(tǒng)的MySQL服務(wù)器。SQL節(jié)點(diǎn)通過mysqld --ndbcluster --ndb-connectstring方式啟動。

在生產(chǎn)環(huán)境中,部署一套三節(jié)點(diǎn)的MySQL集群是不現(xiàn)實(shí)的,因?yàn)檫@樣的配置無法提供冗余保護(hù)。想要實(shí)現(xiàn)MySQL集群的高可用性,需要部署多個(gè)數(shù)據(jù)節(jié)點(diǎn)和SQL節(jié)點(diǎn),管理節(jié)點(diǎn)也推薦部署多個(gè)。

管理服務(wù)器負(fù)責(zé)管理集群的配置和集群日志。每個(gè)集群節(jié)點(diǎn)讀取管理服務(wù)器上面的配置信息。

另外,除了上面這些節(jié)點(diǎn),還有集群客戶端進(jìn)程和應(yīng)用程序,包括標(biāo)準(zhǔn)的MySQL客戶端、NDB特定的API程序和管理客戶端。

MySQL集群有兩種日志:
集群日志:記錄集群的事件報(bào)告
節(jié)點(diǎn)日志:每個(gè)節(jié)點(diǎn)的單獨(dú)日志

通常,只需要檢查集群日志即可,只要當(dāng)開發(fā)應(yīng)用程序或排錯(cuò)時(shí)才會用到節(jié)點(diǎn)日志檢查點(diǎn),一般來說,當(dāng)數(shù)據(jù)被保存到磁盤上時(shí),會觸發(fā)一個(gè)檢查點(diǎn)。在MySQL集群中,當(dāng)被提交的事務(wù)數(shù)據(jù)被保存到磁盤上時(shí),會觸發(fā)檢查點(diǎn)。對于NDB存儲引擎,有兩種類型的檢查點(diǎn)一起工作來確保集群數(shù)據(jù)的一致性。

本地檢查點(diǎn)(LCP):這是單獨(dú)節(jié)點(diǎn)上面的檢查點(diǎn)。一個(gè)本地檢查點(diǎn)會保存本地節(jié)點(diǎn)上面的所有數(shù)據(jù)到磁盤上,每幾分鐘會觸發(fā)一次,觸發(fā)檢查點(diǎn)的時(shí)間間隔依據(jù)節(jié)點(diǎn)上面的數(shù)據(jù)量、集群的活動級別和其他因素而定。

全局檢查點(diǎn)(GCP):全局檢查點(diǎn)每幾秒鐘會發(fā)生一次,當(dāng)所有節(jié)點(diǎn)上面的事務(wù)同步且日志文件被刷新到磁盤上時(shí)發(fā)生。

一個(gè)數(shù)據(jù)節(jié)點(diǎn)是一個(gè)ndbd進(jìn)程,每個(gè)數(shù)據(jù)節(jié)點(diǎn)需要部署到不同的主機(jī)上,MySQL集群不支持在同一臺主機(jī)上部署多個(gè)ndbd進(jìn)程。
[root@dongdan ~]# ps -ef|grep ndbd
root     23759     1  0 Aug03 ?        00:00:00 ndbd
root     23760 23759  0 Aug03 ?        00:24:05 ndbd
root     31446 31395  0 13:46 pts/2    00:00:00 grep ndbd

管理節(jié)點(diǎn)的進(jìn)程是ndb_mgmd進(jìn)程,SQL節(jié)點(diǎn)的進(jìn)程是mysqld進(jìn)程。
[root@dongdan ~]# ps -ef|grep mysqld
root     23833     1  0 Aug03 ?        00:00:00 /bin/sh /usr/bin/mysqld_safe --defaults-file=/var/lib/mysql/main_my.cnf
mysql    24051 23833  0 Aug03 ?        00:36:04 /usr/sbin/mysqld --defaults-file=/var/lib/mysql/main_my.cnf --basedir=/usr --datadir=/var/lib/mysql/database --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/var/lib/mysql/database/dongdan.err --pid-file=/var/lib/mysql/database/dongdan.pid --socket=/var/lib/mysql/mysql.sock --port=3306
root     31464 31395  0 13:50 pts/2    00:00:00 grep mysqld

節(jié)點(diǎn)組包含一個(gè)或多個(gè)節(jié)點(diǎn)。

MySQL集群使用心跳和超時(shí)機(jī)制,當(dāng)其中一個(gè)節(jié)點(diǎn)網(wǎng)絡(luò)無法聯(lián)通時(shí),會判斷這個(gè)節(jié)點(diǎn)失效。

到此,關(guān)于“MySQL集群NDB 7.5有哪些知識點(diǎn)”的學(xué)習(xí)就結(jié)束了,希望能夠解決大家的疑惑。理論與實(shí)踐的搭配能更好的幫助大家學(xué)習(xí),快去試試吧!若想繼續(xù)學(xué)習(xí)更多相關(guān)知識,請繼續(xù)關(guān)注創(chuàng)新互聯(lián)-成都網(wǎng)站建設(shè)公司網(wǎng)站,小編會繼續(xù)努力為大家?guī)砀鄬?shí)用的文章!

文章標(biāo)題:MySQL集群NDB7.5有哪些知識點(diǎn)-創(chuàng)新互聯(lián)
轉(zhuǎn)載來源:http://bm7419.com/article46/cdgpeg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供標(biāo)簽優(yōu)化、網(wǎng)站內(nèi)鏈、虛擬主機(jī)、自適應(yīng)網(wǎng)站、域名注冊、網(wǎng)站設(shè)計(jì)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

網(wǎng)站優(yōu)化排名