MySQL 8.0.31 GA

来源: OSCHINA
2022-10-12 07:32:18

MySQL 8.0.31 现已正式发布,一些改进内容包括:

  • 审计插件:审计插件的日志轮换函数audit_log_rotate(),简化了日志轮换的工作,用户无需手动更改日志名称,也无需设置audit_log_flush = ON
  • 组件服务:启用了新的组件服务,支持服务器组件和在本地服务器中查询的插件。新的MySQL命令服务类似于C API函数libmysql
  • OCI密钥存储组件component_keyring_oci替代之前用于OCI的Keyring插件,用以支持在Oracle Cloud上进行密钥存储。
  • 优化器改进:优化器的内部管理操作进行了一组改进,包括如下:

带括号的查询表达式可以使用UNION进行嵌套,例如,​​​​​​

(  (SELECT a, b, c FROM t ORDER BY a LIMIT 3) ORDER BY b LIMIT 2) ORDER BY c LIMIT 1;

当使用多组括号时,仍遵循现有的语义标准,更高的外部限制不能覆盖括号内部较低的限制,例如,

(SELECT ... LIMIT 3LIMIT 5

最多返回三行数据。

UNION DISTINCT 和 UNION ALL 可以进行任意嵌套。

  • SQL语法:SQL不再支持使用full和FULL为对象命名,如果继续使用full或FULL作为表、视图、字段、存储过程等名称,将会被警告。SQL支持使用 INTERSECT 和 EXCEPT。
  • 查询重写插件优化:MySQL 支持查询重写插件,这些插件可以在服务器执行之前检查并可能修改服务器接收到的 SQL 语句,之前,无论用户权限如何所有的查询都需要重写,甚至包括执行的内部系统查询。在这一版本加入了新的权限SKIP_QUERY_REWRITE,通过新的系统变量rewriter_enabled_for_threads_without_privilege_checks进行控制是否忽略对某些线程执行的语句进行改写。
  • OpenSSL:在内置OpenSSL的平台上,MySQL使用的OpenSSL库升级至1.1.1q。
  • 监视缓冲池调整容量:InnoDB提供了两个新的状态变量Innodb_buffer_pool_resize_status_code和Innodb_buffer_pool_resize_status_progress用以监视缓冲池在线调整的过程。
  • 并行创建索引:InnoDB现在支持并行索引构建,改进索引构建性能。
  • 复制过滤优化:复制开启过滤时,副本不再引发复制错误相关的权限检查和require_row_format验证,副本将在全部的复制过滤应用后进行检查。
  • 监视资源组:增加了状态变量Resource_group_supported,用以监视服务器是否支持资源组。
  • 二进制包优化:二进制包中包含了curl,不再链接系统的curl库
  • 资源争用优化:新的系统变量thread_pool_transaction_delay,允许在工作线程执行新的事务前指定延迟,适用于由于资源争用引发的并行事务对其他操作带来的性能影响。
  • 调整查询线程数量:新的系统变量thread_pool_query_threads_per_group,使得用户可以增加线程组内的查询线程数量。
  • 新的线程池插件:MySQL Database Service中使用的线程池插件,在MySQL企业版中提供。

以上内容是8.0.31的一个快速浏览,更为详细的功能改进和错误修复,可访问官网

稿源:https://mp.weixin.qq.com/s/h5l811FMpZH4xm6ATvU9tA

展开阅读全文
点击加入讨论🔥(2) 发布并加入讨论🔥
本篇精彩评论
版本号怎么现在不刷了,8.0好久了吧,8.1什么时候来
2022-10-12 10:56
1
举报
2 评论
4 收藏
分享
返回顶部
顶部