项目进阶 之 集群环境搭建(三)多管理节点MySQL集群

        上次的博文项目进阶 之 集群环境搭建(二)MySQL集群中,我们搭建了一个基础的MySQL集群。这篇博客咱们继续解说MySQL集群的相关内容,同一时候针对上一篇遗留的问题提出一个解决方式。

1、单管理节点MySQL集群和多管理节点MySQL集群

        上一篇的博客中,我们搭建的MySQL集群架构中,仅仅存在一个管理节点。这样搭建的集群能够用例如以下所看到的的结构表示。



        细致分析上图就会发现,上图所看到的的单管理节点MySQL集群存在当唯一的管理节点因为网络、断电、压力过大等各种原因宕机后,数据节点和SQL节点将会各自为战,成为一盘散沙。这样搭建的MySQL集群可用性较低,所以我们要将单管理节点集群改变成例如以下图所看到的的多管理节点集群。



        在上图的多管理节点MySQL集群中,因为管理节点存在多个,所以当当中的某一个管理节点出现宕机之后。其它的管理节点自己主动接过MySQL集群的管理权限。保证MySQL集群的正常执行。




2、多管理节点MySQL集群配置

        多管理节点MySQL的配置很easy,仅须要改动之前的博文中提高的三种节点的三个地方。



        1)改动管理节点配置

        打开管理节点C:mysqlin下的config.ini文件,将当中ndb_mgmd的相关配置改动为例如以下内容:
[ndb_mgmd] 
# Management process options:  
# Hostname or IP address of management node    
HostName=192.168.24.16              
# Directory for management node log files   
DataDir=C:/mysql/bin/cluster-logs


[ndb_mgmd]   
# Management process options:  
# Hostname or IP address of management node    
HostName=192.168.24.43               
# Directory for management node log files   
DataDir=C:/mysql/bin/cluster-logs
        即改动之后的config.ini存在多个ndb_mgmd管理节点的相关配置。



        2)改动数据节点配置

        打开数据节点C:mysqlclusterdatanodemysql下的my.ini文件,将当中mysql_cluster的相关配置改动为例如以下内容:
[mysql_cluster]  
# Optionsfor data node process:  
#location of management server  
ndb-connectstring=192.168.24.16,192.168.24.43
        即改动之后的mysql_cluster节点下的ndb-connectstring相应多个管理节点的IP地址。

假设管理节点改动了服务port号,则须要加入相应的port号,比如:192.168.24.16:3306,192.168.24.43:3306

        3)改动SQL节点配置

        与改动数据节点类似。改动SQL节点配置须要打开C:mysqlclustersqlnodemysql下的my.ini文件,将当中mysqld的相关配置改动为例如以下内容:
[mysqld]   
# Options for mysqld process:   
# run NDB storage engine   
ndbcluster                         
# location of management server   
ndb-connectstring=192.168.24.16,192.168.24.43
        即改动之后的mysqld节点下的ndb-connectstring相应多个管理节点的IP地址。

3、多管理节点MySQL集群配置启动和測试

        多管理节点MySQL集群的启动和測试与单管理节点MySQL集群的启动和測试没有差别,能够參考上一篇文章中的相关介绍。

须要注意的是在启动MySQL集群的时候,除第一个启动的管理节点以外,其它管理节点会出现例如以下图所看到的的警告:


        以上警告的意思是节点1和3。2和4的arbitrator在一台主机上,可能引起整个集群失败,这个警告能够不用放在心上继续操作就可以。



        到眼下为止。咱们的多管理节点的MySQL集群就搭建完成了,这种集群的在正常情况下能够满足一般需求,但并非说它就真的无懈可击,它从架构和有用度来讲还能够进行很多其它的优化和完好,详细都有哪些能够优化和完好的地方呢?敬请期待接下来的文章!

原文地址:https://www.cnblogs.com/yxwkf/p/5308227.html