MySql Cluster 集群新增节点测试以及各个节点作用

原创
2018/05/24 11:27
阅读数 2K

安装步骤->安装步骤

查看错误->错误集锦

节点作用->节点作用

测试结果->测试结果

图解:启动过程

SQL,在DB没有启动的时候是无法启动的.

DB启动,你需要在短时间内启动全部DB节点,否在,DB节点可能会出现全部挂掉的情况

图解:SQL请求过程,数据存储过程

SQL节点分区好后开始发送请求,我测试下应该是一起发送,所有请求.当数据到达数据节点,会先存入数据的内存内.然后数据节点会将内存数据同步到本地磁盘上,在会到同组的节点备份一个数据,数据节点存储数据位置在数据存放位置的LCP目录下(/usr/local/mysql/data/LCP/)

Mysql Cluster 管理节点

管理节点作用: 管理配置文件,监控节点,暂停以及唤醒数据节点.当管理节点挂点,整个集群是可以照常运行的.这个节点没有必要新增,如果配置双管理节点,那也是为了学习,很少见配置双管理节点.

动态新增管理节点:没有必要.一个足够了.

Mysql Cluster 数据节点

数据节点作用:当数据节点启动,它会将数据加载到内存中,由于设计了数据节点内存大小,小心会超过. 在运行过程中,如果内存中数据发生了变化,它会将内存的数据同步到磁盘上,以及各个副本服务器中.

动态新增数据节点:如果要新增数据节点,节点的备份数量是不能修改的,如果修改了配置文件中的备份数量,需要数据节点初始化,这样会导致数据节点的数据丢失.

新增备份数的机器,如果NoOfReplicas=2,你新增节点需要多加两个.必须同时加入,否在分配节点组的时候会报错.刚加入节点如下图:

新建nodegroup, create nodegroup 7,8,(7,8是节点id)

重新分配数据,登录 sql 执行:ALTER TABLE student ALGORITHM=INPLACE, REORGANIZE PARTITION; 刚开始:

最终结果:

添加成功,这时候只要重启其他数据节点,占有的百分比就会下降.

分片时,旧数据节点内存中的数据不会发生变化,只有重启数据节点后才能看到效果

数据节点的CPU占用异常高,数据库几乎处于不可用的状态.所以生产环境要注意.

Mysql Cluster SQL节点

SQL节点作用:除了存储数据,其他东西都由它管理,包括分片,SQL语句解读等等.

动态新增SQL节点:照常配置新的SQL节点.配置文件配置新节点,重新加载配置文件,启动SQL节点SQL服务即可.

上图是新增节点,访问不存在的数据库时的操作.(SQL节点保存了数据库的信息,但是,数据表,数据都是存储在数据节点上的)

注意:新增的SQL节点没有数据库的信息,也就是没有database,如果你需要访问对应的database,请自己创建.由于数据节点不会存储database的数据.

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部