关于集群的介绍我这儿都不说了,网上一大堆,需要的自己去百度,我这儿直接写如何配置的集群,
虽然网上很多的配置集群的方式,但很多就是错误的,这儿我会针对网上一些问题进行说明
配置环境:windows10
mysql cluster版本:
mysql-cluster-gpl-7.4.6-winx64.zip
需要服务器:
3台电脑,如果没有可以安装虚拟机
管理节点:192.168.199.156
数据节点和sql节点:192.168.199.219
数据节点和sql节点:192.168.199.161
配置集群的步骤:
1、解压mysql-cluster-gpl-7.4.6-winx64.zip
2、配置管理节点:
在IP为192.168.199.156的主机的C盘中新建文件夹mysql,然后在此文件夹下新建子目录bin和mysql-cluster,再将安装包解压后的mysql\bin中的ndb_mgm.exe和ndb_mgmd.exe拷贝到C:\mysql\bin下。在目录C:\mysql\bin下新建cluster-logs目录、config.ini文件和my.ini文件。
config.ini文件的内容如下:
[ndbd default]
# Options affecting ndbd processes on all data nodes:
NoOfReplicas=2 # Number of replicas
DataDir=c:/mysqlcluster/datanode/mysql/bin/cluster-data # Directory for each data node's data files
DataMemory=80M # Memory allocated to data storage
IndexMemory=18M # Memory allocated to index storage
# For DataMemory and IndexMemory, we have used the
# default values.
[ndb_mgmd]
# Management process options:
HostName=192.168.199.156 # 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":
# (one [ndbd] section per data node)
HostName=192.168.199.161 # Hostname or IP address
[ndbd]
# Options for data node "B":
HostName=192.168.199.219 # Hostname or IP address
[mysqld]
# SQL node options:
HostName=192.168.199.161 # Hostname or IP address
[mysqld]
# SQL node options:
HostName=192.168.199.219 # Hostname or IP address
my.ini中的内容为:
[mysql_cluster]
# Options for management node process
config-file=C:/mysql/bin/config.ini
3.配置数据节点
在IP为192.168.199.161的主机中新建文件夹C:\mysqlcluster\datanode\mysql,然后在此文件夹中继续新建子目录bin和cluster-data,bin下再建一个子目录也叫cluster-data。
将安装包解压文件夹中mysql\bin中的ndbd.exe拷贝到C:\mysqlcluster\datanode\mysql\bin下,并在C:\mysqlcluster\datanode\mysql中新建my.ini文件,文件内容为:
[mysql_cluster]
# Options for data node process:
ndb-connectstring=192.168.199.156 # location of management server
因为两台主机的数据节点的配置是一样的,所以我们可以直接将192.168.1.10主机中的文件夹C:\mysqlcluster拷贝到192.168.199.219主机的C盘下。
4.配置SQL节点
在192.168.199.161主机的C:\mysqlcluster\sqlnode下新建子目录mysql,将安装包解压文件夹mysql-cluster-gpl-7.4.6-winx64里面所有的内容拷贝到这个子目录下,然后在C:\mysqlcluster\sqlnode\mysql下新建my.ini文件,文件内容为:
[mysqld]
# Options for mysqld process:
ndbcluster # run NDB storage engine
ndb-connectstring=192.168.199.156 # location of management server
之后也把C:\mysqlcluster\sqlnode文件夹整个拷贝到192.168.199.219主机的相同目录下。
启动集群
备注:打开命令窗口,都必须以管理员的身份运行,不然会出错。
1、启动管理节点:
在192.168.199.156主机中打开命令行窗口,切到C:\mysql\bin目录,输入:
ndb_mgmd -f config.ini --configdir=C:\mysql\mysql-cluster
注意:这个窗口不能关闭;
2、启动数据节点:
在192.168.199.161主机中打开一个新的命令行窗口,切到目录C:\mysqlcluster\datanode\mysql\bin,输入:
ndbd.exe --ndb-connectstring=192.168.199.156
注意:这个窗口不能关闭,另外一台以同样的方式启动
3、启动SQL节点
在192.168.199.161主机中继续打开一个新的命令行窗口,切到目录C:\mysqlcluster\sqlnode\mysql\bin,输入:
mysqld.exe --ndbcluster --ndb-connectstring=192.168.199.156 --consol
注意:这个窗口不能关闭,另外一台以同样的方式启动
这儿的一个总体注意:启动集群必须按着1、2、3的顺序来。
对可能出现的问题的说明:
1:开启数据节点的时候:
Unable to connect with connect string: nodeid=0,172.3.200.156:1186
Retrying every 5 seconds. Attempts left: 12 11 10 9 8 7 6 5 4 3 2 1, failed.
出现原因:
很多文档只说了在开启数据节点的时候输入ndbd ,如果输入下面的,则这个问题就解决了
ndbd.exe --ndb-connectstring=192.168.199.156.exe --ndb-connectstring=192.168.199.156
2.开启sql节点的启动失败
这儿错误太多,就不贴了哈!
解决方法:
关闭mysqld进程
删除data 里面的ib_logfile0 和ib_logfile1 这两个文件