Documentation Home
MySQL 5.7 发行说明  /  MySQL 5.7.32 的变化(2020-10-19,全面上市)

MySQL 5.7.32 的变化(2020-10-19,全面上市)

添加或更改的功能

  • LOCK TABLES视图的特权检查得到改进。(缺陷号 31304432)

修正错误

  • InnoDB: 更新内部临时表的聚集索引的查询返回了不正确的结果。聚集索引的修改页面未添加到刷新列表中,导致在修改页面从缓冲池中逐出时丢失更改。(缺陷号 31560679)

    参考:这个问题是 Bug #29207450 的回归。

  • InnoDB:ALTER TABLE ... IMPORT TABLESPACE对大型加密和压缩表 的错误读取后失败。解密操作未使用加密期间使用的加密块大小。另外,加密过程不考虑压缩长度,而解密过程只根据压缩长度对数据进行解密。(缺陷号 31313533)

  • InnoDB: 并发更新操作期间发生故障。失败是由于先前的记录值无效。(漏洞 #31205266,漏洞 #99286)

  • InnoDB: 用于处理 SHOW ENGINE INNODB MUTEX语句的函数与同时添加新互斥锁的其他线程的隔离不够充分。(缺陷号 31105262)

  • InnoDB: 缓冲区控制块结构 (buf_block_t) 被释放,同时减少了缓冲池的大小,导致断言失败。此 bug 的修复还向后移植了 Bug #20735882 / Bug #76343 修复的重要方面,并用函数替换了内部 buf_block_is_uncompressed()函数 buf_pointer_is_block_field_instance() 。该buf_block_is_uncompressed() 函数在太多情况下返回 false,影响 OLTP 查询吞吐量。(错误#31036301,错误#31389823)

  • InnoDB: 在以 开始的会话中START TRANSACTION WITH CONSISTENT SNAPSHOT,范围查询返回了截断的结果。结束范围标志未在索引读取开始时重置,导致读取中止和丢失行。(漏洞 #30950714,漏洞 #98642)

    参考资料:此问题是 Bug #23481444 的回归。

  • InnoDB: 全文短语搜索引发断言失败。感谢 TXSQL(腾讯 MySQL)的贡献。(错误#30933728,错误#31228694)

    参考资料:此问题是 Bug #22709692 的回归。

  • InnoDB: 对大型表进行的长时间运行的统计计算操作阻塞了需要访问表统计信息的其他操作,导致这些操作失败。引入了一个新的统计计算互斥量,它允许并发访问表统计信息。感谢 Kamil Holubicki 的贡献。(缺陷号 30607708)

  • InnoDB: 两个连接尝试使用相同的事务处理程序对象,导致查询停止。(缺陷号 30594501)

  • 复制: 当复制源服务器关闭并重新启动时,其 MEMORY表变为空。为了将这种效果复制到副本,源MEMORY在启动后第一次使用给定表时,它会记录一个事件,通知副本必须通过将语句写入二进制日志来清空该表。以前,这是一个 DELETE声明,但现在是一个 TRUNCATE TABLE声明。副本服务器在关闭和重新启动时也会将此语句写入自己的二进制日志。该语句始终以语句格式记录,即使二进制日志记录格式设置为 ROW,即使 read_onlysuper_read_only模式在服务器上设置。(缺陷 #29848785,缺陷 #95496)

  • 复制: 当系统变量 session_track_gtids设置为 OWN_GTID多线程副本时,副本的性能会随着时间的推移而下降并开始落后于主服务器。原因是副本的工作线程在每次事务提交时记录的 GTID 累积,这增加了工作线程插入新线程所花费的时间。现在对多线程副本上的工作线程禁用会话状态跟踪。感谢 Facebook 的贡献。(缺陷 #29049207,缺陷 #92964)

  • LDAP 身份验证成功的某些情况可能会导致服务器挂起。(缺陷号 31661437)

  • 在引导模式下,某些多语句事务可能会导致意外的服务器行为。(缺陷号 31650096)

  • 在 SQL 语句中检索时,敏感的 LDAP 身份验证插件系统变量现在显示为星号。(错误#31388444,错误#31391864)

  • 在修复 Bug #81009 后,截断性能模式表的权限检查在 启用read_onlysuper_read_only启用时过于严格,导致截断失败,即使对于具有适当表权限的用户也是如此。(漏洞 #31080309,漏洞 #99072)

    参考资料:这个问题是 Bug #81009 的回归。

  • 某些INSERT语句未正确处理。(缺陷号 31072198)

  • 某些准备好的语句可能会导致服务器意外退出。(缺陷号 30943963)

  • mysqlpump对象验证包括排除数据库中的对象。(缺陷号 30819012)

  • LDAP 身份验证插件错误地执行了 CA 验证,这可能导致使用不正确的 CA。(缺陷号 30220357)

  • ORDER BYsort_buffer_size当和 max_sort_length被设置为导致每个排序缓冲区允许的最大键数的内部限制被设置为 0 的值时,查询未正确执行。(缺陷 #30175483)

  • 全文搜索查询中的大量嵌套参数导致错误。(缺陷号 29929684)

  • explicit_defaults_for_timestamp 被禁用并且 aNULL被插入到声明为 的生成列中 时,服务器将尝试将插入的值转换为。这样的插入现在被拒绝了 。(漏洞#29449518)TIMESTAMP NOT NULLCURRENT_TIMESTAMPER_BAD_NULL_ERROR

  • 当 SQL 层将不正确的信息传递给InnoDB有关要在临时表上执行的操作类型时,可能会引发断言。(漏洞 #22503696)