mysql ndb集群数据节点未同步且对同一查询的不同响应
Posted
技术标签:
【中文标题】mysql ndb集群数据节点未同步且对同一查询的不同响应【英文标题】:myql ndb cluster data nodes not synced and different response to same query 【发布时间】:2018-03-21 01:41:02 【问题描述】:我的一个 Sql 节点因“连接错误太多”而失败,当使用 ndb_mgm 查看集群的状态时,我意识到数据节点 2 已关闭,因此我重新启动它并重新启动 sql 节点。在“启动”数据节点 2 2 小时后,它出现了,但现在当我发出此查询时,从 summantions 中选择计数(*),我第一次得到,可能是 107,000,000 行,但如果我再次运行查询,现在它显示大约 90,000,000。
内存使用情况如下:
已用节点内存 (GB) 可用 (GB)
2 数据存储器 39.16 40.84
2 索引内存 3.28 2.06
2 长消息缓冲区 0.00 0.03
3 数据存储器 44.92 35.08
3 索引内存 3.76 1.58
3 长消息缓冲区 0.00 0.03
数据节点2中使用的内存小于数据节点3中使用的内存。
我的猜测是,在第一次查询运行中,我从一个数据节点获取结果,而在第二次运行中,我从另一个数据节点获取结果。
如果是这种情况,如何同步数据节点合并其数据?
【问题讨论】:
【参考方案1】:听起来很像一个错误。同步节点 通过执行初始节点来处理认为已损坏 重新开始。这将清除节点中的状态,它将 与保存其数据的其他节点同步。
但验证事物是否已损坏显然很重要 首先。
【讨论】:
以上是关于mysql ndb集群数据节点未同步且对同一查询的不同响应的主要内容,如果未能解决你的问题,请参考以下文章
使用“ndb --initial”会导致 MySQL 集群上的数据丢失?