一、增加管理节点
1、编辑管理节点配置文件config.ini
vi /var/lib/mysql-cluster/config.ini
添加第二个管理节点信息
[ndb_mgmd]
NodeId=2HostName=172.16.43.152DataDir=/var/lib/mysql-cluster
2、跟其他管理节点一样,配置第二台主机
3、启动两台管理节点
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --config-cache=FALSE
如果前面没有配置不启用缓存,则后面要加一个--reload
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --reload
查看节点状态:
4、修改SQL节点和数据节点的my.cnf文件
vi /etc/my.cnf
变更ndb-connectstring配置,添加一个管理节点信息(以逗号隔开):
ndb-connectstring=172.16.43.151,172.16.43.152
重新启动各个SQL节点和数据节点,添加管理节点完成。
二、添加数据节点
数据节点必须已config.ini的NoOfReplicas倍数添加,我配置的是2,所有我需要2台主机做为新添加的数据节点。
1、修改管理节点的config.ini文件
vi /var/lib/mysql-cluster/config.ini
添加如下配置信息:
[ndbd]
NodeId=13HostName=172.16.43.155DataDir=/usr/local/mysql/data
[ndbd]
NodeId=14HostName=172.16.43.156DataDir=/usr/local/mysql/data
2、重新启动管理节点
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --config-cache=FALSE
3、安装新添加的2个数据节点,只需要拷贝ndbd和ndbmtd文件并配置my.cnf文件即可,参考开头提到的MySQL集群安装中的数据节点安装。
4、启动新添加的2个数据节点
查看各个节点状态如下
此时新添加的2个节点是没有分组的,也就不能存储数据,我们必须对他进行分组
CREATE NODEGROUP 13,14 # 13和14是新添加的数据节点NodeId
到这,添加节点的工作就完成了,数据库新添加的数据会往Nodegroup 1分配(也就是节点13、14),我们查看各个数据节点存储使用状态
all report memory
红框内的数据表示存储使用量,因为测试数据量很小,所有使用率都为0。
特别说明:上面的添加数据节点并进行分组的做法相当于扩硬盘。保证管理节点可用的情况下,每个分组只要有一个数据节点可用,则整个分组就是可用的,当所有的分组都可用时,我们的服务才是可用的。如果要增加稳定性,则可以改变NoOfReplicas数据数量,让每个组数据节点增加就可以了,因为组内数据节点的数据一样的。