tcmalloc
不再是mysqld_safe--malloc-lib
选项的允许值。(缺陷号 31372027)
-
libevent
与 MySQL 捆绑 的库已升级到版本 2.1.11。另外,对于 CMake选项,做了如下两处改动:WITH_LIBEVENT
yes
不再允许作为 . 的同义词system
。改用system
。如果
system
指定但未libevent
找到系统,则不再使用捆绑版本来代替缺少的系统库,而是发生错误。
(缺陷号 30926742)
-
不兼容的更改: 访问
INFORMATION_SCHEMA.FILES
表现在需要PROCESS
权限。此更改会影响mysqldump 命令的用户,该命令访问表中的
FILES
表空间信息,因此现在PROCESS
也需要该权限。不需要转储表空间信息的用户可以通过 使用该 选项调用mysqldump来解决此要求。--no-tablespaces
(缺陷号 30350829) 用于 MySQL 服务器的链接 OpenSSL 库已更新到版本 1.1.1g。在https://www.openssl.org/news/cl111.txt和 https://www.openssl.org/news/vulnerabilities.html中描述了新 OpenSSL 版本中修复的问题 。(缺陷号 31296697)
InnoDB:定义为模块所有者的计数器 的
INNODB_METRICS
表AVG_COUNT_RESET
该METRIC_AVG_VALUE_RESET
字段被错误地标记为 NULL。感谢 Fungo Wang 的贡献。(漏洞 #31084706,漏洞 #98990)InnoDB: 当历史列表长度接近零时,清除线程活动过多,浪费 CPU 资源并导致互斥锁争用。(缺陷号 30875956)
InnoDB: 服务器间歇性失败,出现“ ibuf 游标恢复失败”错误。(漏洞 #30770380,漏洞 #91033)
-
InnoDB:关闭期间发生 致命的“页面仍然固定或脏”错误。(缺陷 #29759555,缺陷 #95285)
参考:这个问题是 Bug #29207450 的回归。
-
分区: 针对使用 的分区表的查询
ORDER BY
在以下条件下返回无序结果:该表有一个复合索引,其中一列带有前缀。
查询的
WHERE
子句包含前缀列的相等条件。带有前缀的列是索引中最左边的列。
中使用的
ORDER BY
列是索引中最右边的列。该索引用于处理
ORDER BY
.
感谢韩全安的建议。(漏洞 #84070,漏洞 #25207522)
复制: 当复制源服务器关闭并重新启动时,其
MEMORY
表变为空。为了将此效果复制到副本,源在启动后第一次使用给定 语句MEMORY
写入二进制日志来通知副本必须清空DELETE
以前,生成的DELETE
语句被写入当前会话的二进制日志语句缓存,这可能导致它与同一 GTID 下的其他语句一起记录,或者在没有BEGIN
语句COMMIT
。此外,在某些情况下,生成的DELETE
语句可以使用用于触发它的事务的 GTID。生成的DELETE
语句现在与伴随的语句一起记录,BEGIN
生成COMMIT
的事务在写入语句缓存后立即刷新到二进制日志,因此它始终接收自己的 GTID 并与其他事务分开。(错误#30527929,错误#25681518,错误#77729)复制: 如果它们与组成员的更改同时发生,则从组复制到性能模式的内部查询对本地组成员的统计信息失败。改进了内部查询的锁定以解决此问题。(错误#30049349,错误#30791583,错误#30963553)
-
复制: 在 MySQL 8.0.14 和 MySQL 5.7.25 中针对涉及系统变量的死锁场景进行了修复,
binlog_transaction_dependency_tracking
并binlog_transaction_dependency_history_size
具有使用于事务依赖性跟踪的写入集历史不受并发更新保护的副作用。写入集历史记录和跟踪模式现在在访问时被正确锁定。(缺陷 #29719364,缺陷 #95181)参考资料:另请参阅:Bug #28511326、Bug #91941。
配置
-DWITH_EDITLINE=system
导致旧库版本的编译失败。(缺陷号 31366715)以前的 MySQL 发行版中捆绑库的升级
libedit
导致使用该库的构建出现问题,因此 在某些情况下, mysql客户端中的CTRL + C (SIGINT) 需要以下 Enter 才能生效。(缺陷号 31360025)CONCAT('')
将or 分配CONCAT_WS('')
给变量将变量设置为NULL
,而不是空字符串。(错误#31320716、错误#99485、错误#31413167、错误#99722)用户定义的
gen_range()
函数可能对其参数处理不当,导致服务器退出。(缺陷号 30763294)在
UPDATE
处理过程中,将内部内存表转换为InnoDB
可能会导致密钥长度错误。(缺陷号 30674616)可以定义一个名为
*
(单个星号字符)的列,但SELECT `*`
被视为与 相同SELECT *
,因此不可能在查询中仅选择该列;换句话说,星号字符被扩展为所有表列的列表,即使它被反引号包围。(缺陷号 30528450)内部数据包长度函数返回错误整数类型的值。(缺陷号 30139031)
mysqldump对语句长度的 计算
INSERT
没有考虑_binary
用于VARBINARY
字符串的字符集引入器。(缺陷 #29998457,缺陷 #96053)-
内部方法
Field_tiny::pack()
并不总是按预期执行边界检查。(缺陷号 29948029)参考资料:另请参阅:Bug #31591391。
mysql_store_result()
可能无法检测到无效的数据包。(漏洞#29921423)在
UPDATE
更新首张表key的多表中,如果使用临时表策略,可能会在临时表中写入重复的条目,导致Can't find record
错误。(漏洞 #28716103)优化器可能会尝试将伪表作为表来访问,从而导致意外的服务器行为。(漏洞 #28651673)
服务器有时会在优化查询时错误地删除带有 a 的子
GROUP BY
查询,即使在某些情况下该子查询被外部选择使用。当子查询也使用聚合函数时,可能会发生这种情况。(缺陷号 28240054)功能的可强制性
NAME_CONST()
评估不正确。(缺陷号 26319675)当优化器在生成的列上选择索引来获取值时,可能会出现不正确的结果。(错误#24345509,错误#29451999)