網上所有講述關于MySQL Cluster 的文章
要不就是跳過了某些步驟沒說
要不就是搞得太複雜.把配置檔案能寫的都加上了
這對于按需自定義很不友善
甚至MySQL官網的HELP
對于某些内容的描述也是有些模糊和遺漏的
隻能參考N多文檔進行N多試驗.
最後得出正确以及最簡化的配置方法
然後大家可以按照最簡化的配置.
自行加上所需的配置内容.
網絡分布
MySQL Server1 : 192.168.210.131
MySQL Server2 : 192.168.210.132
NDB MGM : 192.168.210.133
NDB1 : 192.168.210.134
NDB2 : 192.168.210.135
NDB節點
先從MYSQL官網下載下傳NDB Storage Engine
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-ndb-storage-5.0.45-0.glibc23.i386.rpm
安裝後配置my.cnf
NDB節點的配置檔案隻需要一句話用來指定MGM的位址即可
# vi /etc/my.cnf
[MYSQL_CLUSTER]
ndb-connectstring=192.168.210.133
初始化ndbd
# ndbd –initial
啟動ndbd
# ndbd
MGM節點
安裝PERL子產品
# yum install perl
# wget http://dag.wieers.com/rpm/packages/perl-HTML-Template/perl-HTML-Template-2.9-1.el5.rf.noarch.rpm
# rpm -ivh perl-HTML-Template-2.9-1.el5.rf.noarch.rpm
下載下傳MGM服務以及管理工具
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-ndb-management-5.0.45-0.glibc23.i386.rpm
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-ndb-tools-5.0.45-0.glibc23.i386.rpm
安裝之後配置MGM配置檔案
#vi /etc/ndb.ini
# Example Ndbcluster storage engine config file.
#
[ndbd default]
NoOfReplicas= 2
MaxNoOfConcurrentOperations= 10000
DataMemory= 80M
IndexMemory= 24M
TimeBetweenWatchDogCheck= 30000
DataDir= /var/lib/mysql-cluster
MaxNoOfOrderedIndexes= 512
[ndb_mgmd default]
DataDir= /var/lib/mysql-cluster
[ndb_mgmd]
Id=1
HostName=192.168.210.133
[ndbd]
Id= 2
HostName=192.168.210.134
[ndbd]
Id= 3
HostName=192.168.210.135
[mysqld]
Id= 4
hostname=192.168.210.131
[mysqld]
Id= 5
hostname=192.168.210.132
# choose an unused port number
# in this configuration 63132, 63133, and 63134
# will be used
[tcp default]
PortNumber= 63132
啟動MGM
# ndb_mgmd -f /etc/ndb.ini
MySQL節點
安裝MySQL服務端,Redhat自帶的5.0.22版本似乎不支援mysql cluster
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-devel-5.0.45-0.glibc23.i386.rpm
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-server-5.0.45-0.glibc23.i386.rpm
安裝MySQL用戶端
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-shared-5.0.45-0.glibc23.i386.rpm
http://mirrors.24-7-solutions.net/pub/mysql/Downloads/MySQL-5.0/MySQL-client-5.0.45-0.glibc23.i386.rpm
MySQL配置檔案
# vi /etc/my.cnf
[MYSQLD]
ndbcluster
ndb-connectstring=192.168.210.133
#将預設存儲方式改成NDB,對于生産環境下的MySQL Cluster會友善很多.
default-storage-engine=ndbcluster
啟動MySQL
# /etc/rc.d/init.d/mysql restart
然後我們回到MGM節點伺服器192.168.210.133
檢視節點情況
# ndb_mgm
> show
ndb_mgm> show
Cluster Configuration
———————
[ndbd(NDB)] 2 node(s)
id=2 @192.168.210.134 (Version: 5.0.45, Nodegroup: 0)
id=3 @192.168.210.135 (Version: 5.0.45, Nodegroup: 0, Master)
[ndb_mgmd(MGM)] 1 node(s)
id=1 @192.168.210.133 (Version: 5.0.45)
[mysqld(API)] 4 node(s)
id=4 @192.168.210.131 (Version: 5.0.45)
id=5 @192.168.210.132 (Version: 5.0.45)
所有節點都已正常啟動
安裝MySQL Cluster有幾點要注意
1.不能使用RedHat或者CentOS自帶的mysql服務.此服務甚至不支援NDB的參數
2.似乎NDB隻有二進制代碼下載下傳.至今沒有找到源代碼包下載下傳