OK,下面我们进行正式的配置,准备好4台机器,具体如下:

 

192.168.18.10:MGM/SQL1

192.168.18.11:NDBD1

192.168.18.12:NDBD2

SQL2:192.168.18.9

 

这里说明一下,我们把MGM管理节点安装再了一台SQL节点上,实际生产环境中根据实际情况定夺,但最好建议3台以上设备

 

 二、软件安装:

 此处用到mysql-cluster-gpl-7.2.8.tar.gz源码包

(一)管理节点MGM/SQL1

1.配置管理节点文件

[root@localhost  home]# vi config.cnf

 

[ndbd default]

NoOfReplicas= 2

DataMemory= 20M

IndexMemory= 1M

DataDir= /data/


[ndb_mgmd]

HostName= 192.168.18.10

DataDir= /data/


[ndbd]

Id=10

Hostname=192.168.18.11

DataDir= /data/


[ndbd]

Id=11

Hostname=192.168.18.12

DataDir= /data/


[mysqld]

Id=21

Hostname=192.168.18.10


[mysqld]

Id=22

Hostname=192.168.18.9

安装管理节点,不需要mysqld二进制文件,只需要MySQL Cluster服务端程序(ndb_mgmd)和监听客户端程序(ndb_mgm),这两个文件都在下载的MySQL-cluster文件解压后的bin文件夹中,下面我们解压mysql-cluster-gpl-7.2.8-linux2.6-i686.tar.gz这个文件,并顺带的把mysql安装完毕,由于我们的MGM管理节点于一台sql节点在同一机器上,所以我们稍后直接启动服务即可

 2,配置SQL节点mysql服务

注:两台SQL节点的配置完全一样,下面我只讲述了一台的配置方法,另一台只需要按照此方式配置即可

[root@localhost home]# tar -zxf mysql-cluster-gpl-7.2.8-linux2.6-i686.tar.gz

[root@localhost home]# cd mysql-cluster-gpl-7.2.8-linux2.6-i686 && ls

配置mysql-cluster群集(二)_mysql-cluster

解压进入后,查看安装INSTALL-BINARY这个安装二进制文件,并查找以shell开头的文件行具体如下:

[root@localhost mysql-cluster-gpl-7.2.8-linux2.6-i686]# vi INSTALL-BINARY

配置mysql-cluster群集(二)_mysql-cluster_02

ok ,我们可以看到,已经明确给出了install的源码,把以上几行复制粘贴出来后,保存为一个文件,稍加修改即可,文件内如如下:(由于我们压缩包已经解压,所以取消了tar -zxf部分)

 

 groupadd mysql

 useradd -r -g mysql mysql

 cd /usr/local

 ln -s /home/mysql-cluster-gpl-7.2.8-linux2.6-i686 mysql

 cd mysql

 chown -R mysql .

 chgrp -R mysql .

 scripts/mysql_install_db --user=mysql

 chown -R root .

 chown -R mysql data

# Next command is optional

 cp support-files/my-medium.cnf /etc/my.cnf

 bin/mysqld_safe --user=mysql &

# Next command is optional

 cp support-files/mysql.server /etc/init.d/mysqld

 chomd 755 /etc/init.d/mysqld
 

保存为setup, 并给于执行权限chmod +x setup

 

[root@localhost mysql-cluster-gpl-7.2.8-linux2.6-i686]# ./setup

安装完毕即可

[root@localhost mysql-cluster-gpl-7.2.8-linux2.6-i686]# /usr/local/mysql/bin/mysql 看到已经启动了

配置mysql-cluster群集(二)_mysql-cluster_03

因为其作为mysql-cluster中的sql节点,所以我们还需要配置一下/etc/my.cnf这个文件,我们只需要在[mysqld]加入(如图所示)

[mysqld]

ndbcluster   

ndb-connectstring=192.168.18.10   #指向MGM管理节点

加入[mysql_cluster]

ndb-connectstring=192.168.18.10    #指向MGM管理节点

并注释掉如下参数

 

#log-bin=mysql-bin

#binlog_format=mixed

#server-id      = 1

 

配置mysql-cluster群集(二)_mysql-cluster_04

至此,我们的两个SQL节点已经配置完成

3.配置NDBD 节点

注:NDBD1于NDBD2的配置完全相同 

 

安装数据节点,不需要mysqld二进制文件,只需要NDBD服务端即可,这个文件在下载的MySQL-cluster文件解压后的bin文件夹中

因此我们直接解压mysql-cluster-gpl-7.2.8-linux2.6-i686.tar.gz这个文件即可

[root@localhost  home]groupadd mysql

[root@localhost  home]useradd -g mysql mysql

[root@localhost  home]tar mysql-cluster-gpl-7.2.8-linux2.6-i686.tar.gz

[root@localhost  home] ln -s /home/mysql-cluster-gpl-7.2.8-linux2.6-i686 mysql

[root@localhost  home]mkdir /data

[root@localhost  home]chown mysql:mysql /usr/local/mysql

[root@localhost  home]chown mysql:mysql /data

[root@localhost  home]# cat /etc/my.cnf 

[mysqld]

datadir=/data

ndbcluster

ndb-connectstring=192.168.18.10

[mysql_cluster]

ndb-connectstring=192.168.18.10

好了,至此 我们所有的节点都已配置完毕,现在我们启动相应的服务即可,启动顺序必须按照

MGM-NDBD-SQL的顺序来:

我们在192.168.18.10先启动MGM管理节点服务

[root@localhost  home]/usr/local/mysql/bin/ndb_mgmd -f /home/config.ini

配置mysql-cluster群集(二)_mysql-cluster_05

[root@localhost  home]/usr/local/mysql/bin/ndb_mgm

ndb_mgm>show

配置mysql-cluster群集(二)_mysql-cluster_06

我们看到,mgm管理平台启动成功,由于没有启动相应的节点,因此都是not connected状态,下面我们依次启动ndbd节点,sql节点

 启动ndbd:

[root@localhost  home]/usr/local/mysql/bin/ndbd

启动sql:

[root@localhost  home]/etc/init.d/mysqld start or restart(之所以有restart,是因为在安装后都会启动mysql)

配置mysql-cluster群集(二)_mysql-cluster_07

 

ok,所有节点启动完毕