作者:骁炉 | 来源:互联网 | 2023-06-09 18:23
说明:这是我到公司上班的第一个任务,费了我一周的时间。过程是非常苦逼的。。。下面我就简单说说吧:在1台机器上搭建集群环境比较简单,直接参考MYSQL官网给出的说明文件就可
说明:这是我到公司上班的第一个任务,费了我一周的时间。过程是非常苦逼的。。。下面我就简单说说吧:在1台机器上搭建集群环境比较简单,直接参考MYSQL官网给出的说明文件就可以轻松配置。3台机器搭建集群环境遇到问题比较多,主要问题如下:(1)防火墙问题,3台机器的防火墙都需要关闭。(2)启动数据库问题,由于我没有安装MYSQL客户端,直接用mysql命令启动不了数据库,纠结了很久最后用了:ln -s /var/lib/mysql/mysql.sock /tmp/mysql.sock这个命令终于解决了。(3)虚拟机问题,不知道为什么,我用clone的系统做这个实验不能成功,最后只能是安装三个系统。至于为什么用clone的系统不能成功,我还没找到原因所在。除了以上三个让我困惑了比较长时间的问题,其他还遇到很多小问题,在这里就不写出来了。虽然环境已经搭建成功,但其中的原理还不是很明白,还需要在实际应用中去慢慢理解体会。主要配置步骤如下:
1. 集群配置如下:

2. 管理节点安装和配置(192.168.6.134)

3. 数据节点安装(192.168.6.135,192.168.6.136)

4. 启动管理节点服务(192.168.6.134)

下面是我测试过程中的结果数据:

5. 启动数据节点服务(192.168.6.135,192.168.6.136)

192.168.6.135机器上的结果:

192.168.6.136机器上的结果:

6. 启动SQL节点服务(192.168.6.135,192.168.6.136)

测试结果:

7. 功能测试

测试结果:

可以看到这里的数据节点、管理节点、sql节点都是正常的
★非常重要:
1.在建表的时候一定要用ENGINE=NDB或ENGINE=NDBCLUSTER指定使用NDB集群存储引擎,或用ALTER TABLE选项更改表的存储引擎。
实际数据测试:
现在我们在其中一个数据节点上进行相关数据库的创建,然后到另外一个数据节点上看看数据是否同步。
在数据节点1(192.168.6.135)上执行:

然后在数据节点2上看数据是否同步过来了

可以清楚看到,数据库aa已经存在。
再查询aa数据库中表tb1里面的信息:

可以看到,表中的数据也可以正常查询出来。说明数据同步已经成功。
8.关闭集群
关闭管理节点和数据节点,只需要在管理节点(192.168.6.134)里执行:

显示结果:

然后关闭Sql节点(135,136),分别在2个节点里运行:

注意:要再次启动集群,就按照第4,5,6步的启动步骤即可,不过这次启动数据节点的时候就不要加”–initial”参数了。