Windows下的Mysql集群之路

本著一顆不斷學(xué)習(xí)新技術(shù)的心態(tài)(好吧,其實(shí)這個(gè)技術(shù)不新车胡,只是我沒有接觸過而已),所以今天下午就研究一下mysql集群,順便在windows搭建起來(下一步計(jì)劃折騰一下linux)睛榄。

一、mysql集群的概念

1. 管理節(jié)點(diǎn):除了管理下面兩個(gè)節(jié)點(diǎn)以外想帅,還要操心集群日志场靴,配置等東西。原則上只有一個(gè)就好了港准,掛了就完蛋了旨剥。

2. 數(shù)據(jù)節(jié)點(diǎn):存儲(chǔ)數(shù)據(jù)

3. sql節(jié)點(diǎn):向數(shù)據(jù)節(jié)點(diǎn)提交sql請(qǐng)求

其他的概念就先不詳細(xì)說明了,因?yàn)槲乙膊皇呛芮宄?/p>


二浅缸、準(zhǔn)備工具

1. 集群版mysql轨帜。

? ?下載地址:?傳送門?。?

2. 因?yàn)樵O(shè)備有限衩椒,所以就兩臺(tái)pc就好了蚌父,具體用途如下:

?管理節(jié)點(diǎn): A地址

?數(shù)據(jù)節(jié)點(diǎn): A地址 & B地址

sql節(jié)點(diǎn): A地址 & B地址

所以,在啟動(dòng)管理節(jié)點(diǎn)的時(shí)候毛萌,可能會(huì)出現(xiàn)警告苟弛。(誰叫你窮呢,只要兩臺(tái)機(jī)器)

(既當(dāng)裁判員阁将,又是運(yùn)動(dòng)員)


三膏秫、準(zhǔn)備工作

1. 在管理節(jié)點(diǎn)(A主機(jī))的c:\mysql\bin下面新建兩個(gè)文件夾cluster-logs和config。前者用來存儲(chǔ)日志做盅,后者存放配置文件

2. 在config文件夾新建兩個(gè)文件config.ini和my.ini荔睹。

(配置文件的格式有點(diǎn)亂啊狸演。。僻他。)

my.ini

[mysql_cluster]

#?Options?for?management?node?process

config-file=C:/mysql/bin/config/config.ini


config.ini

[ndbd default]

#?Options?affecting?ndbd?processes?on?all?data?nodes:

NoOfReplicas=2??????????????????????#?Number?of?replicas

DataDir=C:/mysql/bin/cluster-data???#?Directory?for?each?data?node's?data?files

#?Forward?slashes?used?in?directory?path,

#?rather?than?backslashes.?This?is?correct;

#?see?Important?note?in?text

DataMemory=80M??????????????????????#?Memory?allocated?to?data?storage

IndexMemory=18M?????????????????????#?Memory?allocated?to?index?storage

#?For?DataMemory?and?IndexMemory,?we?have?used?the

#?default?values.?Since?the?"world"?database?takes?up

#?only?about?500KB,?this?should?be?more?than?enough?for

#?this?example?Cluster?setup.

[ndb_mgmd]

#?Management?process?options:

HostName=A???????????#?Hostname?or?IP?address?of?management?node

DataDir=C:/mysql/bin/cluster-logs???#?Directory?for?management?node?log?files

[ndbd]

#?Options?for?data?node?"A":

HostName=A?????????????#?Hostname?or?IP?address

[ndbd]

#?Options?for?data?node?"B":

HostName=B????????????#?Hostname?or?IP?address

[mysqld]

#?SQL?node?A?options:

HostName=A??????????????#?Hostname?or?IP?address

[mysqld]

#?SQL?node?B?options:

HostName=B???????????#?Hostname?or?IP?address


這兩個(gè)文件的意思還是挺簡(jiǎn)單明了的宵距。這里稍微講一下config.ini文件。NoOfReplicas的值吨拗,根據(jù)數(shù)據(jù)節(jié)點(diǎn)的個(gè)數(shù)來填寫就好满哪。當(dāng)然,也可以小于這個(gè)數(shù)劝篷,只是可能會(huì)產(chǎn)生數(shù)據(jù)不一致的情況而已(我其實(shí)還不是和清楚哨鸭,以后再補(bǔ)充)。還有娇妓,上面提到一個(gè) C:/mysql/bin/cluster-data 文件夾像鸡,新建一個(gè)就好,用來存放數(shù)據(jù)文件的哈恰。

3. 配置好A主機(jī)后只估,將整個(gè)mysq文件夾同步到B主機(jī)即可(不怕麻煩的話,可以自行再安裝一份)


四着绷、部署

mysql集群的啟動(dòng)順序如下:

管理節(jié)點(diǎn)---》數(shù)據(jù)節(jié)點(diǎn)----》sql節(jié)點(diǎn)

注意蛔钙,以下步驟,最好使用root權(quán)限啟動(dòng)cmd窗口荠医。

1. 啟動(dòng)管理節(jié)點(diǎn)

執(zhí)行命令: c:\mysql\bin\ndb_mgmd.exe --configdir=c:\mysql\bin\config --config-file=c:\mysql\bin\config\config.ini --ndb-nodeid=1 --reload –initial

這里指定了配置文件夾吁脱,配置文件和節(jié)點(diǎn)id。


這個(gè)警告彬向。兼贡。。

突然想到一個(gè)事情娃胆,如果啟動(dòng)不成功遍希,只要清理掉config文件夾下面的 非配置文件,然后重新啟動(dòng)即可缕棵。

2. 啟動(dòng)數(shù)據(jù)節(jié)點(diǎn)

執(zhí)行命令:c:\mysql\bin\ndbd.exe --ndb-connectstring=A主機(jī)地址 --initial-start 孵班。網(wǎng)上很多教程會(huì)忽略參數(shù) ?--initial-start ,你可以先不用招驴,出現(xiàn)問題的時(shí)候再回來加上篙程。這個(gè)地方坑了我好久,總是出現(xiàn)莫名其妙的錯(cuò)誤别厘,后來在一個(gè)同事的幫忙下才解決(在ndbd --help里面找到的虱饿,我的腦子短路了沒有留意這里)。


節(jié)點(diǎn)id=2

3. 啟動(dòng)sql節(jié)點(diǎn)

執(zhí)行命令: c:\mysql\bin\mysqld.exe --ndbcluster --ndb-connectstring=A主機(jī)地址 --console。 這里開啟集群模式氮发,連接的是A主機(jī)渴肉。


最后提示成功

4. 至此,應(yīng)該是成功了爽冕,如果沒有明顯報(bào)錯(cuò)的話(這句話好像有點(diǎn)廢仇祭。。颈畸。)

我們可以再開一個(gè)窗口乌奇,觀察連接情況。執(zhí)行命令: c:\mysql\bin\ndb_mgm眯娱,連接成功后礁苗,鍵入 show.


如無意外應(yīng)是如此

如果顯示失敗什么之類的,自行面壁去徙缴。试伙。。這是管理節(jié)點(diǎn)的情況于样,可以進(jìn)行對(duì)節(jié)點(diǎn)的操作疏叨,例如kill一個(gè)節(jié)點(diǎn)之類的,我沒去了解百宇,不懂考廉。下次再了解秘豹。

五携御、測(cè)試集群時(shí)候成功

1. 在A節(jié)點(diǎn)創(chuàng)建數(shù)據(jù),然后在B節(jié)點(diǎn)觀察既绕,看看會(huì)不會(huì)同步過來啄刹。至于怎么創(chuàng)建,我就不說了凄贩。這里有一點(diǎn)需要注意的是誓军,一開始我創(chuàng)建的數(shù)據(jù)庫(kù)會(huì)同步,但是數(shù)據(jù)表卻沒反應(yīng)疲扎。有點(diǎn)坑昵时,其實(shí)也正常,不然數(shù)據(jù)可能會(huì)亂套了椒丧。在建表的時(shí)候壹甥,只需要在sql語(yǔ)句末尾加上 engine=ndbcluster 即可,表示這個(gè)數(shù)據(jù)表參與集群活動(dòng)壶熏,不然數(shù)據(jù)表不會(huì)同步的句柠。

2. 在我的觀察下,顯示是成功的。


六溯职、總結(jié)遇到的坑以及下一步的去向

現(xiàn)在看來精盅,這個(gè)環(huán)境的搭建真的很簡(jiǎn)單,但是總會(huì)遇到各種亂七八糟的一臉蒙蔽的錯(cuò)誤谜酒。

1. 數(shù)據(jù)節(jié)點(diǎn)連接不上的時(shí)候叹俏,可以上網(wǎng)查詢答案,或者查看該命令的用法(command --help)僻族,或許可以找到答案她肯。我發(fā)現(xiàn)自己的解決能力真的很一般。

2. 雖然搭建好這個(gè)東西鹰贵,但是還有一大堆的事情完全不了解晴氨。譬如,如何管理節(jié)點(diǎn)碉输,如何備份籽前,如何負(fù)載均衡。敷钾。枝哄。出現(xiàn)異常如何快速定位錯(cuò)誤并及時(shí)解決。還有很長(zhǎng)很長(zhǎng)的路要走阻荒。

3. 對(duì)于線上的項(xiàng)目挠锥,一般不會(huì)使用windows作為服務(wù)器,也不會(huì)將msql部署在win平臺(tái)上侨赡,所以下一步要折騰linxu蓖租。至于我為什么會(huì)先弄windows,我只能說羊壹,我喜歡蓖宦。

4. 最后,需要說明一下油猫,并不是一個(gè)數(shù)據(jù)節(jié)點(diǎn)對(duì)應(yīng)一個(gè)sql節(jié)點(diǎn)的稠茂。一般來說,如果數(shù)據(jù)節(jié)點(diǎn)太多的話情妖,會(huì)降低性能睬关;sql節(jié)點(diǎn)多的話,能提升并發(fā)量毡证。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末电爹,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子情竹,更是在濱河造成了極大的恐慌藐不,老刑警劉巖匀哄,帶你破解...
    沈念sama閱讀 223,126評(píng)論 6 520
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異雏蛮,居然都是意外死亡涎嚼,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 95,421評(píng)論 3 400
  • 文/潘曉璐 我一進(jìn)店門挑秉,熙熙樓的掌柜王于貴愁眉苦臉地迎上來法梯,“玉大人,你說我怎么就攤上這事犀概×⒀疲” “怎么了?”我有些...
    開封第一講書人閱讀 169,941評(píng)論 0 366
  • 文/不壞的土叔 我叫張陵姻灶,是天一觀的道長(zhǎng)铛绰。 經(jīng)常有香客問我,道長(zhǎng)产喉,這世上最難降的妖魔是什么捂掰? 我笑而不...
    開封第一講書人閱讀 60,294評(píng)論 1 300
  • 正文 為了忘掉前任,我火速辦了婚禮曾沈,結(jié)果婚禮上这嚣,老公的妹妹穿的比我還像新娘。我一直安慰自己塞俱,他們只是感情好姐帚,可當(dāng)我...
    茶點(diǎn)故事閱讀 69,295評(píng)論 6 398
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著障涯,像睡著了一般罐旗。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上像樊,一...
    開封第一講書人閱讀 52,874評(píng)論 1 314
  • 那天尤莺,我揣著相機(jī)與錄音旅敷,去河邊找鬼生棍。 笑死,一個(gè)胖子當(dāng)著我的面吹牛媳谁,可吹牛的內(nèi)容都是我干的涂滴。 我是一名探鬼主播,決...
    沈念sama閱讀 41,285評(píng)論 3 424
  • 文/蒼蘭香墨 我猛地睜開眼晴音,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼柔纵!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起锤躁,我...
    開封第一講書人閱讀 40,249評(píng)論 0 277
  • 序言:老撾萬榮一對(duì)情侶失蹤搁料,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體郭计,經(jīng)...
    沈念sama閱讀 46,760評(píng)論 1 321
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡霸琴,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 38,840評(píng)論 3 343
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了昭伸。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片梧乘。...
    茶點(diǎn)故事閱讀 40,973評(píng)論 1 354
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖庐杨,靈堂內(nèi)的尸體忽然破棺而出选调,到底是詐尸還是另有隱情,我是刑警寧澤灵份,帶...
    沈念sama閱讀 36,631評(píng)論 5 351
  • 正文 年R本政府宣布仁堪,位于F島的核電站,受9級(jí)特大地震影響填渠,放射性物質(zhì)發(fā)生泄漏枝笨。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 42,315評(píng)論 3 336
  • 文/蒙蒙 一揭蜒、第九天 我趴在偏房一處隱蔽的房頂上張望横浑。 院中可真熱鬧,春花似錦屉更、人聲如沸徙融。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,797評(píng)論 0 25
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)欺冀。三九已至,卻和暖如春萨脑,著一層夾襖步出監(jiān)牢的瞬間隐轩,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,926評(píng)論 1 275
  • 我被黑心中介騙來泰國(guó)打工渤早, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留职车,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 49,431評(píng)論 3 379
  • 正文 我出身青樓鹊杖,卻偏偏與公主長(zhǎng)得像悴灵,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子骂蓖,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,982評(píng)論 2 361

推薦閱讀更多精彩內(nèi)容