您的位置:首页 > 数据库 > MySQL

MySQL8.0.20 正式发行(GA)

2021-02-28 22:25 656 查看

MySQL的最新版本8.0.20正式发行。与之前8.0的系列版本一样,这次的发行版,除了包含缺陷修复,也同样包扩新功能。让我们快速浏览一下。

关键字:hash join, InnoDB双写缓冲, 二进制日志事务压缩

  • 增加了SHOW_ROUTINE权限。使用该权限允许账户在最小权限下备份存储程序。

  • 改进hash join。现在可以使用hash join代替BNL,hash join现在支持半连接、反连接、外连接。

  • 加入新的索引级别的优化器提示。包括:JOIN_INDEX、NO_JOIN_INDEX、GROUP_INDEX、NO_GROUP_INDEX、ORDER_INDEX、NO_ORDER_INDEX、INDEX 及 NO_INDEX 。新的索引级别的优化器提示可以搭配SELECT, UPDATE和 DELETE语句使用,而以往的无法和DELETE一起使用。

  • Performance Schema改良。为了减少错误检测的内存开销,Performance Schema放弃了在全局范围收集会话相关的错误统计信息。此外,针对每个线程,帐户,用户或主机报告的错误摘要中不再包含全局的错误信息。

  • SQL语法改良。以前,语句的INTO子句 SELECT可能出现在以下两个位置之一:

现在,INTO可以出现在SELECT的最后:

此外,还针对进行 UNION 的 INTO进行了一些更改,下面的语句结果相同:

  • X Plugin改良。在启动中创建管理会话,以供达到客户端连接限制时获取服务器配置。初始化后立即可以访问MySQL系统变量等缺陷修复。

  • BLOB类型排序改变。改变了以往的非完整排序,服务器将BLOB类型转换为打包的插件进行排序,经测试,性能得到显著提升。

  • InnoDB改良。双写缓冲区的存储从系表空间移至双写文件。将双写缓冲区存储区移出系统表空间可减少写延迟,增加吞吐量并在双写缓冲区页的放置方面提供灵活性。

  • 二进制日志事务压缩。从MySQL 8.0.20开始,您可以在MySQL服务器实例上启用二进制日志事务压缩。启用二进制日志事务压缩后,将使用zstd算法压缩事务有效负载,然后将其作为单个事件(Transaction_payload_event)写入服务器的二进制日志文件 。压缩后的事务有效负载在复制流中发送到从服务器,其他群组复制组成员或客户端(例如mysqlbinlog)时,保持压缩状态 。它们不会被接收器线程解压缩,并且仍以其压缩状态写入中继日志。因此,二进制日志事务压缩既可以节省事务的始发者,也可以节省接收者(及其备份)的存储空间,并在服务器实例之间发送事务时节省网络带宽。

  • CHANGE MASTER TO语句的新选项REQUIRE_TABLE_PRIMARY_KEY_CHECK使复制的从服务器可以选择自己的策略来进行主键检查。

  • MySQL 8.0.19开始,通过X协议连接发送的消息已支持压缩。MySQL 8.0.19开始,通过X协议连接发送的消息已支持压缩。在MySQL 8.0.19中,X协议对每种算法使用库默认压缩级别,客户端无法协商该默认压缩级别。从MySQL 8.0.20开始,客户端可以在协商期间为X协议连接请求特定的压缩级别。

上面内容为MySQL8.0.20的新功能快速一览,您可以访问MySQL的在线手册获取完整的最新信息。https://dev.mysql.com/doc/relnotes/mysql/8.0/en/

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: