MySQL NDB Cluster 7.6.20 是 NDB 7.6 的新版本,它基于 MySQL Server 5.7,包括
NDB
存储引擎 7.6 版中的功能,并修复了最近在之前的 NDB Cluster 版本中发现的错误。
获取 NDB Cluster 7.6。 NDB Cluster 7.6 源代码和二进制文件可以从 https://mysql.net.cn/downloads/cluster/获得。
有关 NDB Cluster 7.6 中所做更改的概述,请参阅 NDB Cluster 7.6 中的新增功能。
此版本还包含了在以前的 NDB Cluster 版本中所做的所有错误修复和更改,以及在主线 MySQL 5.7 到 MySQL 5.7.36 中添加的所有错误修复和功能更改(请参阅MySQL 5.7.36 中的更改(2021-10- 19,一般可用性))。
内核块中使用的缓冲区
SUMA
并不总是容纳多个信号。(缺陷号 33246047)在某些情况下,数组索引可能会超过
NO_OF_BUCKETS
. (缺陷号 33019959)添加了一个
ndbrequire()
inQMGR
来检查从信号中接收到的节点 ID 是否CM_REGREF
小于MAX_NDB_NODES
. (缺陷号 32983311)据报告处理
GET_TABLEID_REQ
信号的代码中缺少检查。为了解决这个问题,所有与所有GET_TABLEID_*
信号相关的代码都已从NDB
源代码中删除,因为 NDB Cluster 不再使用或支持这些信号。(缺陷号 32983249)添加了一个
ndbrequire()
inQMGR
以确保来自信号数据的过程报告使用适当的节点 ID。(缺陷号 32983240)在某些情况下,使用内部管理 API 时可能会指定无效的节点类型。现在 API 明确禁止无效节点类型,并定义了一个 “未知”节点类型 (
NDB_MGM_NODE_TYPE_UNKNOWN
) 来涵盖此类情况。(缺陷号 32957364)-
ndb_restore在
--disable-indexes
元数据已经用--disable-indexes
.当
--disable-indexes
用于在恢复数据之前恢复元数据时,目标架构中的表没有索引。我们现在在使用此选项恢复数据时检查以确保目标表上没有索引,并且仅当表已经有索引时才打印警告。(漏洞#28749799) -
当使用 完成元数据的恢复时
--disable-indexes
,没有尝试创建依赖于这些索引的索引或外键,但是当在没有选项的情况下使用ndb_restore时,创建了索引和外键。--disable-indexes
稍后在恢复数据时 使用 when,NDB
尝试删除在上一步中创建的任何索引,但由于依赖于未删除的外键索引而忽略了删除索引操作的失败。当试图创建已经存在的外键时,这随后导致重建索引时出现问题。我们修复ndb_restore如下:
使用时
--disable-indexes
, ndb_restore现在会删除从备份中恢复的任何外键。ndb_restore现在在尝试删除索引之前检查索引是否存在。
(漏洞#26974491)
事件记录器显示的事件缓冲区状态消息已得到改进。现在仅在需要时才显示百分比。此外,如果未定义最大尺寸,则打印输出显示
max=unlimited
. (缺陷号 21276857)