集群Cluster安装


2020年4月27日 15:08     admin

简介

mysql集群的是三种节点:

管理节点

  1. 管理节点主要是用来对其他的节点进行管理。通常通过配置config.ini文件来配置集群中有多少需要维护的副本、配置每个数据节点上为数据和索引分配多少内存、IP地址、以及在每个数据节点上保存数据的磁盘路径;
  2. --------------------------------------------------------
  3. 管理节点通常管理Cluster配置文件和Cluster日志。Cluster中的每个节点从管理服务器检索配置信息,并请求确定管理服务器所在位置的方式。如果节点内出现新的事件的时候,节点将这类事件的信息传输到管理服务器,将这类信息写入到Cluster日志中;
  4. --------------------------------------------------------
  5. 一般在MySQL Cluster体系中至少需要一个管理节点,另外值得注意的是,因为数据节点和SQL节点在启动之前需要读取Cluster的配置信息,所以通常管理节点是最先启动的;

SQL节点

  1. SQL节点简单地讲就是mysqld服务器,应用不能直接访问数据节点,只能通过SQL节点访问数据节点来返回数据。任何一个SQL节点都是连接到所有的存储节点的,所以当人任何一个存储节点发生故障的时候,SQL节点都可以把请求转移到另一个存储节点执行。通常来讲,SQL节点越多越好,SQL节点越多,分配到每个SQL节点的负载就越小,系统的整体性能就越好;

数据节点

  1. 数据节点用来存放Cluster里面的数据,MySQL Cluster在各个数据节点之间复制数据,任何一个节点发生了故障,始终会有另外的数据节点存储数据;

注意:

  1. 通常这3种不同逻辑的节点可以分布在不同的计算机上面,也可以在同一台服务器上。集群最少有3台计算机,为了保证能够正常维护集群服务,通常将管理节点放在一个单独的主机上;

安装

下载地址:https://dev.mysql.com/downloads/cluster/7.6.html

安装管理节点

解压mysql-cluster安装包

  1. tar -zxvf mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64.tar.gz
  2. mv mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64 /usr/local/mysql-cluster

创建配置文件

  1. vim /usr/local/mysql-cluster/config.ini
  1. [ndbd default]
  2. NoOfReplicas=2 #数据节点需是此值的倍数
  3. DataMemory=512M
  4. IndexMemory=18M
  5. [ndb_mgmd]
  6. HostName=192.168.31.88
  7. DataDir=/usr/local/mysql-cluster
  8. [ndbd]
  9. HostName=192.168.31.88
  10. DataDir=/usr/local/mysql-cluster
  11. [ndbd]
  12. HostName=192.168.31.146
  13. DataDir=/usr/local/mysql-cluster
  14. [mysqld]
  15. HostName=192.168.31.88
  16. [mysqld]
  17. HostName=192.168.31.146

添加环境变量

  1. echo "export PATH=$PATH:/usr/local/mysql-cluster/bin" >> /etc/profile
  2. source /etc/profile

使用配置文件初始化管理节点

  1. /usr/local/mysql-cluster/bin/ndb_mgmd -f /usr/local/mysql-cluster/config.ini --initial
  2. #注意(首次启动才需要加 --initial后面启动去掉--initial即可)
  3. 管理节点关闭命令:ndb_mgm -e shutdown
  4. 查看状态:ndb_mgm-e status
  5. 查看状态:ndb_mgm-e show


安装数据节点

解压mysql-cluster安装包

  1. tar -zxvf mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64.tar.gz
  2. mv mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64 /usr/local/mysql-cluster

创建配置文件(/etc/my.cnf)

  1. [mysqld]
  2. ndbcluster #使用ndb集群引擎
  3. ndb-connectstring=192.168.31.88
  4. default-storage-engine=ndbcluster
  5. #设置默认引擎,只有该引擎的表数据才能保存到数据节点中
  6. [mysql_cluster]
  7. ndb-connectstring=192.168.31.88

3.启动ndbd(数据节点)

  1. ndbd --initial


安装SQL节点

1.解压mysql-cluster安装包

  1. tar -zxvf mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64.tar.gz
  2. mv mysql-cluster-gpl-7.6.13-linux-glibc2.12-x86_64 /usr/local/mysql-cluster

2.要先安装mysql,需用mysql-cluster包来初始化实例,注意使用二进制安装法:安装教程

3.修改配置文件(/etc/my.cnf)

  1. #主要比普通my.cnf多如下配置项
  2. [mysqld]
  3. ndbcluster #使用ndb集群引擎
  4. ndb-connectstring=192.168.31.88
  5. default-storage-engine=ndbcluster
  6. #设置默认引擎,只有该引擎的表数据才能保存到数据节点中
  7. [mysql_cluster]
  8. ndb-connectstring=192.168.31.88

4.启动mysql(SQL节点)

  1. systemctl restart mysql