百度架構(gòu)師是怎樣搭建MySQL分布式集群

1钉迷、準(zhǔn)備集群搭建環(huán)境

使用6臺虛擬機(jī)來搭建MySQL分布式集群至非,相應(yīng)的實驗環(huán)境與對應(yīng)的MySQL節(jié)點之間的對應(yīng)關(guān)系如下圖所示:


管理節(jié)點(MGM):這類節(jié)點的作用是管理MySQLCluster內(nèi)的其他節(jié)點,如提供配置數(shù)據(jù)糠聪,并停止節(jié)點荒椭,運行備份等。由于這類節(jié)點負(fù)責(zé)管理其他節(jié)點的配置舰蟆,應(yīng)該在啟動其他節(jié)點之前啟動這類節(jié)點趣惠。MGM節(jié)點是用命令“ndb_mgmd”啟動的;

數(shù)據(jù)節(jié)點(NDB):這類節(jié)點用于保存Cluster的數(shù)據(jù)身害,數(shù)據(jù)節(jié)點的數(shù)目與副本的數(shù)目相關(guān)味悄,是片段的倍數(shù)。例如塌鸯,對于兩個副本侍瑟,每個副本有兩個片段,那么就有4個數(shù)據(jù)節(jié)點丙猬,沒有必要設(shè)定過多的副本涨颜,在NDB中數(shù)據(jù)會盡量的保存在內(nèi)存中。數(shù)據(jù)節(jié)點使用命令“ndb”啟動的茧球;

SQL節(jié)點:這是用來訪問Cluster數(shù)據(jù)的節(jié)點唐础,對于MySQL Cluster椒袍,客戶端節(jié)點是使用NDB Cluster存儲引擎的傳統(tǒng)MySQL服務(wù)器钻趋。通常州疾,SQL節(jié)點使用命令“mysqld-ndbcluster”啟動的督暂;

2、準(zhǔn)備安裝包

在官網(wǎng)上下載mysql的安裝包: mysql-cluster-gpl-7.4.11-Linux-glibc2.5-x86_64.tar.gz穷吮,并進(jìn)行解壓逻翁。

3、集群搭建流程

1]將上述安裝包解壓出來的文件都移到/usr/local/mysql下酒来;

2]運行script目錄下的mysql-install-db.sh腳本卢未,運行命令為./mysql-install-db.sh --user=root--basedir =/usr/local/mysql --datadir=/usr/local/mysql;注意其中用戶為root的名稱需要跟配置文件my.cnf中的相同堰汉;

在管理節(jié)點辽社,數(shù)據(jù)節(jié)點,SQL節(jié)點上都執(zhí)行上述安裝命令翘鸭,從而完成對mysql的安裝滴铅;

4、集群配置與啟動

1]在管理節(jié)點上需要完成對于集群整體的配置配置:在/var/lib/mysql-cluster/config.ini中實現(xiàn)如下的配置信息:



2]在數(shù)據(jù)節(jié)點中需要在my.cnf中完成對于數(shù)據(jù)節(jié)點的相關(guān)配置信息就乓,如下:


需要指明配置的數(shù)據(jù)節(jié)點的根目錄汉匙,數(shù)據(jù)目錄,socket連接配置生蚁,用戶配置噩翠,以及對應(yīng)的管理節(jié)點的ip地址配置;將配置完成的配置文件移動到/etc/my.cnf邦投,完成伤锚;

3]在SQL節(jié)點上完成對于SQL節(jié)點的配置信息,同樣的是在my.cnf中完成相應(yīng)配置信息志衣,并將配置文件移動到/etc/my.cnf中屯援,相應(yīng)的配置信息的設(shè)定如下所示:


完成以上配置后,就可以啟動集群中的各個節(jié)點了念脯。

5狞洋、集群啟動

在啟動mysql集群的時候,注意首先要啟動管理節(jié)點绿店,并依次啟動其他等若干個節(jié)點吉懊,相應(yīng)的啟動步驟如下:

1]在管理節(jié)點上,切換到/usr/local/mysql/bin目錄下惯吕,執(zhí)行ndb_mgmd -f /var/lib/mysql-cluster/config.ini命令惕它,完成管理節(jié)點的啟動;

2]在各個數(shù)據(jù)節(jié)點上废登,切換到/usr/local/mysql/bin目錄下,執(zhí)行ndbd --initial(第一次啟動時郁惜,否則執(zhí)行ndbd即可)堡距,完成對數(shù)據(jù)節(jié)點的啟動甲锡;

3]在各個SQL節(jié)點上,同樣切換到/usr/local/mysql/bin目錄下羽戒,執(zhí)行mysqld_safe --user=root完成啟動缤沦;


4]在管理節(jié)點上運行ndb_mgm命令,進(jìn)入數(shù)據(jù)庫管理的客戶端易稠,輸入show命令缸废,查看與之相連接的各個節(jié)點的狀態(tài);

5]在SQL節(jié)點上分別進(jìn)入系統(tǒng)的安全狀態(tài)驶社,并完成對root用戶的密碼修改企量,運行以下指令,進(jìn)行密碼修改:

A use mysql亡电,切換到mysql數(shù)據(jù)庫届巩;

B UPDATE user SET Password = PASSWORD('123456')WHERE user = 'root';從而實現(xiàn)對root密碼的修改;

C flush privilege份乒,完成修改恕汇;

6]修改使得任意主機(jī)都能連得上mysql,進(jìn)行如下修改或辖,同樣安裝第5步進(jìn)入安全模式瘾英,并完成相應(yīng)的修改,如下:

grant all on‘*.*’to ‘root@'%' identified by '123456';

這樣就可以使得任意一個主機(jī)都可以通過root用戶來登錄mysql了颂暇;

6缺谴、集群測試

在集群上的一個SQL節(jié)點上執(zhí)行創(chuàng)建數(shù)據(jù)庫,并創(chuàng)建一張表蟀架,并完成相應(yīng)的數(shù)據(jù)插入瓣赂,如下:

A create database ctest; //創(chuàng)建數(shù)據(jù)庫

B create table test(

id int primarykey片拍; //創(chuàng)建一張表

)煌集;

C insert into test (id)values(1); //完成數(shù)據(jù)插入

登錄另外一個SQL節(jié)點,并執(zhí)行SQL查詢操作捌省,看數(shù)據(jù)庫中是否已經(jīng)有數(shù)據(jù)苫纤,如下:

select * from ctest;

如果有數(shù)據(jù),表示數(shù)據(jù)插入成功纲缓;

7卷拘、關(guān)閉集群

1]首先關(guān)閉管理節(jié)點和數(shù)據(jù)節(jié)點,需要在管理節(jié)點上執(zhí)行命令祝高,如下:./ndb_mgm -e shutdown;

2]然后關(guān)閉SQL節(jié)點栗弟,在SQL節(jié)點上執(zhí)行命令/usr/local/mysql/support-fies/mysql.server stop(其中/usr/local/mysql/是mysql的安裝目錄).從而關(guān)閉SQL節(jié)點;

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末工闺,一起剝皮案震驚了整個濱河市乍赫,隨后出現(xiàn)的幾起案子瓣蛀,更是在濱河造成了極大的恐慌,老刑警劉巖雷厂,帶你破解...
    沈念sama閱讀 211,639評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件惋增,死亡現(xiàn)場離奇詭異,居然都是意外死亡改鲫,警方通過查閱死者的電腦和手機(jī)诈皿,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,277評論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來像棘,“玉大人稽亏,你說我怎么就攤上這事〗才” “怎么了措左?”我有些...
    開封第一講書人閱讀 157,221評論 0 348
  • 文/不壞的土叔 我叫張陵,是天一觀的道長避除。 經(jīng)常有香客問我怎披,道長,這世上最難降的妖魔是什么瓶摆? 我笑而不...
    開封第一講書人閱讀 56,474評論 1 283
  • 正文 為了忘掉前任凉逛,我火速辦了婚禮,結(jié)果婚禮上群井,老公的妹妹穿的比我還像新娘状飞。我一直安慰自己,他們只是感情好书斜,可當(dāng)我...
    茶點故事閱讀 65,570評論 6 386
  • 文/花漫 我一把揭開白布诬辈。 她就那樣靜靜地躺著,像睡著了一般荐吉。 火紅的嫁衣襯著肌膚如雪焙糟。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,816評論 1 290
  • 那天样屠,我揣著相機(jī)與錄音穿撮,去河邊找鬼。 笑死痪欲,一個胖子當(dāng)著我的面吹牛悦穿,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播业踢,決...
    沈念sama閱讀 38,957評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼栗柒,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了知举?” 一聲冷哼從身側(cè)響起傍衡,我...
    開封第一講書人閱讀 37,718評論 0 266
  • 序言:老撾萬榮一對情侶失蹤深员,失蹤者是張志新(化名)和其女友劉穎负蠕,沒想到半個月后蛙埂,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,176評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡遮糖,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,511評論 2 327
  • 正文 我和宋清朗相戀三年绣的,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片欲账。...
    茶點故事閱讀 38,646評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡屡江,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出赛不,到底是詐尸還是另有隱情惩嘉,我是刑警寧澤,帶...
    沈念sama閱讀 34,322評論 4 330
  • 正文 年R本政府宣布踢故,位于F島的核電站文黎,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏殿较。R本人自食惡果不足惜耸峭,卻給世界環(huán)境...
    茶點故事閱讀 39,934評論 3 313
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望淋纲。 院中可真熱鬧劳闹,春花似錦、人聲如沸洽瞬。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,755評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽伙窃。三九已至菩颖,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間对供,已是汗流浹背位他。 一陣腳步聲響...
    開封第一講書人閱讀 31,987評論 1 266
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留产场,地道東北人鹅髓。 一個月前我還...
    沈念sama閱讀 46,358評論 2 360
  • 正文 我出身青樓,卻偏偏與公主長得像京景,于是被迫代替她去往敵國和親窿冯。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,514評論 2 348

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