MySQL教程:Linux下搭建MySQL Cluster

安装版本为MySQL-cluster-gpl-7.4.6-linux-glibc2.5-i686.tar.gz(下载地址  )

系统为Linux虚拟机

虚拟机2个(保证防火墙关闭,不然可能部署会不成功)

ip:192.168.52.130  作为管理,数据节点,服务节点

ip:192.168.52.131  作为数据节点,服务节点

一:安装cluster软件

每个节点都需要如下几步(其实管理可以不用,不过我做的时候都在一起,所以没太多研究):

1、下载解压到/usr/local/mysql(目录可以自己选)

tar -zxvf mysql-cluster-gpl-7.4.6-linux-glibc2.5-i686.tar.gz

mv mysql-cluster-gpl-7.4.6-linux-glibc2.5-i686 /usr/local/mysql/

2、创建mysql用户

useradd mysql

chown -R mysql:mysql /usr/local/mysql/

3、修改/etc/profile以方便使用

PATH=$PATH:/usr/local/mysql/bin

export PATH

4、安装mysq(源码安装mysql的步骤)

cd /usr/local/mysql/scripts

./mysql_install_db --basedir=/usr/local/mysql/ --datadir=/usr/local/mysql/data/ --user=mysql   

5、配置管理节点ndb

拷贝/usr/local/mysql/bin/ndb_mgm,ndb_mgmd两个文件到/usr/local/bin

cp /usr/local/mysql/bin/ndb_mgm* /usr/local/bin

到此所有的安装就结束了,下面是启动

节点的启动顺序为管理节点->数据节点->SQL节点

二:启动管理节点

在管理节点上创建配置文件config.ini 步骤如下

mkdir /var/lib/mysql-cluster

vim /var/lib/mysql-cluster/config.ini

config.ini内容

[ndbd default]
 NoOfReplicas=2                #每个数据节点的镜像数量,如果为1当数据节点坏了则cluster不可用,》1相反
DataMemory=200M          # 每个数据节点中给数据分配的内存
IndexMemory=30M            #每个数据节点中给索引分配的内存

[ndb_mgmd]
 id=1               
 hostname=192.168.52.130          #管理节点 IP
 datadir=/var/lib/mysql-cluster/      #管理节点 目录

[ndbd]
 id=2
 hostname=192.168.52.131          #数据节点 IP
 datadir=/usr/local/mysql/data      #数据节点目录
 
 [ndbd]
 id=3
 hostname=192.168.52.130        #数据节点 IP
 datadir=/usr/local/mysql/data    #数据节点目录
 
 [mysqld]
 id=4
 hostname=192.168.52.130        #sql节点 IP
 
 [mysqld]
 id=5
 hostname=192.168.52.131      #sql节点 IP

(注:NoOfReplicas表示数据份数,如果为1,会有数据节点单点故障)

在管理节点上启动管理服务

ndb_mgmd -f /var/lib/mysql-cluster/config.ini

如果修改过config.ini 可以重新加载
ndb_mgmd -f /var/lib/mysql-cluster/config.ini --reload    --加个reload即可

ndb_mgm -e show        查看集群状态
ndb_mgm -e shutdown 关闭集群软件

MySQL教程:Linux下搭建MySQL Cluster


 
管理节点就启动起来了。

其他机器连接管理节点测试

首先其他节点是不知道管理节点是哪个ip(因为其他节点没有config.ini)

三:每个节点都配置/etc/my.cnf文件

所以要配置,配置文件放在/etc/my.cnf,mysql在启动服务的时候会默认加载/etc/my.cnf

my.cnf内容如下:

[mysqld]
 ndbcluster
 datadir=/usr/local/mysql/data
 basedir=/usr/local/mysql
 socket=/tmp/mysql.sock
 port=3306
 ndb-connectstring=192.168.52.130  ---管理节点ip
 [mysql_cluster]
 ndb-connectstring=192.168.52.130  ---管理节点ip

然后在非管理节点上ndb_mgm -e show 也能看见刚才的集群状态

2启动数据节点

/usr/local/mysql/bin/ndbd --initial

安装后第一次启动数据节点时要加上--initial参数,其它时候不要加,除非是在备份、恢复或配置变化后重启时

ndb_mgm -e show 集群状态

MySQL教程:Linux下搭建MySQL Cluster

3启动服务节点

/usr/local/mysql/bin/mysqld_safe  --user=mysql &

ndb_mgm -e show 集群状态

MySQL教程:Linux下搭建MySQL Cluster

到此就搭建成功了,测试的话待续。

MySQL Cluster 备份与恢复

MySQL Cluster安装配置

MySQL Cluster 3台机器搭建集群环境 DOC

MySQL Cluster7.2在线增加数据节点存在重大弊端

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/af50a2cc6f3dbecfdc2234319eba320b.html