管理服務(wù)器(MGM節(jié)點(diǎn))負(fù)責(zé)管理 Cluster 配置文件和 Cluster 日志。Cluster 中的每個(gè)節(jié)點(diǎn)從管理服務(wù)器檢索配置數(shù)據(jù)。當(dāng)數(shù)據(jù)節(jié)點(diǎn)內(nèi)出現(xiàn)新的事件時(shí),節(jié)點(diǎn)將關(guān)于這類事件的信息傳輸?shù)焦芾矸?wù)器,然后,將這類信息寫入 Cluster 日志。
目前能夠運(yùn)行 MySQL Cluster 的操作系統(tǒng)有 Linux、Mac OS X 和 Solaris,最新的版本已經(jīng)支持 Windows 操作系統(tǒng)。
MySQL 群集的數(shù)據(jù)節(jié)點(diǎn)之間的通信是不加密的,并且需要高速的帶寬,所以建議把群集建立在一個(gè)高速局域網(wǎng)內(nèi),不建議跨網(wǎng)段、跨公網(wǎng)的部署這種系統(tǒng)體系。
MySQL 群集分為三種節(jié)點(diǎn):管理節(jié)點(diǎn),數(shù)據(jù)節(jié)點(diǎn)和SQL節(jié)點(diǎn)。
管理節(jié)點(diǎn):主要用于管理各個(gè)節(jié)點(diǎn),能夠通過(guò)命令對(duì)某個(gè)節(jié)點(diǎn)進(jìn)行重啟、關(guān)閉、啟動(dòng)等操作。也能夠監(jiān)視全部節(jié)點(diǎn)的工作狀態(tài)。
數(shù)據(jù)節(jié)點(diǎn):主要是對(duì)數(shù)據(jù)的存儲(chǔ),不提供其他的服務(wù)。
SQL節(jié)點(diǎn):主要是對(duì)外提供SQL功能,類似一臺(tái)普通的 MySQL Server。
而SQL節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn)可以是同一臺(tái)機(jī)器,也就是說(shuō)這臺(tái)機(jī)器即是SQL節(jié)點(diǎn)也是數(shù)據(jù)節(jié)點(diǎn)。它們只是邏輯關(guān)系上的劃分,實(shí)際部署時(shí),甚至所有的階段都可以位于同一臺(tái)物理機(jī)器上,只是配置較復(fù)雜些。
一、軟件下載機(jī)器操作環(huán)境
配置 MySQL 群集必需使用其群集版本,注意和 MySQL Server 版本的區(qū)別。本文以 Windows 平臺(tái)下的 MySQL 群集版本 MySQL Cluster 7.1.3 為例(截至2010年6月初的最高版本),這是 MySQL Server 5.1 系列版本之一,添加了群集的功能。下載地址為:http://dev.mysql.com/downloads/cluster,選擇 mysql-cluster-gpl-noinstall-7.1.3-win32.zip 文件,這是一個(gè) for Windows 32位版本的、免安裝的二進(jìn)制版本。
根據(jù)自己的操作系統(tǒng)的位數(shù),也可以選擇 64 位版本的。還有一個(gè) 27.2M 的 Windows(x86, 32-bit) 版本,下載下來(lái)需要自己編譯,有經(jīng)驗(yàn)的高級(jí)用戶可以選用。
本實(shí)驗(yàn)在 2 臺(tái)安裝 Windows Server 2003(sp2) 的機(jī)器上進(jìn)行。節(jié)點(diǎn)分配及 IP 配置如下:
第一臺(tái)機(jī)器,IP 為 10.0.0.201,作為管理節(jié)點(diǎn)(MGM),SQL節(jié)點(diǎn)1(SQL1),數(shù)據(jù)節(jié)點(diǎn)1(NDBD1)。
第二臺(tái)機(jī)器,IP 為 10.0.0.202,作為SQL節(jié)點(diǎn)2(SQL2),數(shù)據(jù)節(jié)點(diǎn)2(NDBD2)。
管理節(jié)點(diǎn)最好不要與數(shù)據(jù)節(jié)點(diǎn)部署在同一臺(tái)服務(wù)器上,否則可能會(huì)因?yàn)樵摂?shù)據(jù)節(jié)點(diǎn)服務(wù)器的當(dāng)機(jī),而導(dǎo)致管理節(jié)點(diǎn)服務(wù)器的問(wèn)題,從而導(dǎo)致整個(gè)群集系統(tǒng)的崩潰。
二,配置管理節(jié)點(diǎn):
在第一臺(tái)機(jī)器上,建文件夾 D:/mysql-cluster,在其下建立文件 config.ini,內(nèi)容如下:
[NDBD DEFAULT]
NoOfReplicas=1
[MYSQLD DEFAULT]
[NDB_MGMD DEFAULT]
[TCP DEFAULT]
# Managment Server
[NDB_MGMD]
hostname=10.0.0.201
# Storage Engines
[NDBD]
hostname=10.0.0.201
datadir= D:/data
[NDBD]
hostname=10.0.0.202
datadir= D:/data
# SQL Engines
[MYSQLD]
hostname=10.0.0.201
[MYSQLD]
hostname=10.0.0.202
Cluster 管理節(jié)點(diǎn)的默認(rèn)端口是1186,數(shù)據(jù)節(jié)點(diǎn)的默認(rèn)端口是 2202。從 MySQL 5.0.3開(kāi)始,該限制已被放寬,Cluster 能夠根據(jù)空閑的端口自動(dòng)地為數(shù)據(jù)節(jié)點(diǎn)分配端口。如果你的版本低于5.0.22,請(qǐng)注意這個(gè)細(xì)節(jié)。
Cluster 管理節(jié)點(diǎn)作為一個(gè)服務(wù)端(通過(guò)運(yùn)行 db_mgmd.exe 程序讀取本配置文件來(lái)啟動(dòng)),通過(guò)本機(jī)上的客戶端 ndb_mgm.exe 來(lái)連接和操作。
三、配置 MySQL 數(shù)據(jù)庫(kù)服務(wù)器:
在2臺(tái)機(jī)器上,分別依次操作。
解壓 mysql-cluster-gpl-noinstall-7.1.3-win32.zip 文件到 D:/mysql-cluster-gpl-noinstall-7.1.3-win32 文件夾下,把 D:/mysql-cluster-gpl-noinstall-7.1.3-win32/bin 加到 Windows 的系統(tǒng) path 中。
打開(kāi)DOS命令行窗口(配置完系統(tǒng)path后,在再次打開(kāi)新的命令行窗口),執(zhí)行以下語(yǔ)句,讓 MySQL 作為 Windows 服務(wù)運(yùn)行:
mysqld.exe -install mysql
再在 Windows 服務(wù)管理界面里,配置 mysql 服務(wù),手動(dòng)啟動(dòng)(不要自動(dòng)啟動(dòng))。
把 D:/mysql-cluster-gpl-noinstall-7.1.3-win32 下的某個(gè)備用的配置文件(例如my-small.ini)復(fù)制為 my.ini 文件。
建立 D:/tmp 文件夾。
四、配置SQL節(jié)點(diǎn)和數(shù)據(jù)節(jié)點(diǎn):
在2臺(tái)機(jī)器上,分別依次操作。
建立文件夾 D:/data。
編輯 NySQL 配置文件 D:/mysql-cluster-gpl-noinstall-7.1.3-win32/my.ini,在 [mysqld] 節(jié)末尾加語(yǔ)句:
#SQL群集節(jié)點(diǎn)
ndbcluster
ndb-connectstring=10.0.0.201
有了 ndbcluster 語(yǔ)句,mysql 服務(wù)將作為群集的 SQL 節(jié)點(diǎn)啟動(dòng)。mysqld.exe 命令帶參數(shù)
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com