内容提要
Oracle发布了MySQL 8.0.38,这是8.4 LTS系列的首个更新和MySQL 9.0的首个版本。MySQL 9.0引入了新功能,如向量和JavaScript支持。两个LTS版本则专注于稳定性,提供安全更新、错误修复和性能改进。MySQL 9.0的主要亮点包括对向量数据类型的初始和有限支持,以及基于JavaScript的存储程序和函数。MySQL 9.0还删除了mysql_native_password身份验证插件,并引入了一些限制。下一季度的版本将包括新功能、弃用和删除以及错误修复。
延伸解读
创新版与LTS版定位差异
MySQL 9.0属于创新版本,旨在快速引入新功能,如向量和JavaScript支持,但可能不够稳定。而8.4 LTS和8.0.38则专注于稳定性,提供安全更新、错误修复和性能改进。用户应根据自身需求选择:追求新特性可尝试创新版,但需承担风险;生产环境建议使用LTS版本。
向量支持的初步与限制
MySQL 9.0对向量数据类型提供了初步支持,可在CREATE和ALTER语句中使用。但限制较多:向量列不能作为任何类型的键;数值函数、全文搜索函数和运算符不接受向量参数;向量只能与另一个向量进行相等比较。这些限制意味着当前向量功能仅适用于简单存储和检索,复杂操作尚不支持。
身份验证插件移除的影响
MySQL 9.0移除了mysql_native_password身份验证插件,服务器将拒绝来自旧客户端程序的身份验证请求。但客户端仍保留该插件,因此9.0客户端可以连接旧版服务器。这一变化要求使用旧客户端的用户升级客户端或调整认证方式,否则可能无法连接9.0服务器。
升级风险与社区建议
尽管MySQL 9.0包含127个错误修复,但已报告一个关键错误,社区建议不要升级到最新版本。Percona的David Stokes也表示,除了好奇者外,不推荐任何人尝试MySQL 9.0。因此,在生产环境中升级前应谨慎评估,等待后续修复版本。
Q&A
MySQL 9.0有哪些新功能?
MySQL 9.0引入了向量数据类型和JavaScript支持等新功能。
MySQL 9.0的主要亮点是什么?
MySQL 9.0的主要亮点包括对向量数据类型的初始支持和基于JavaScript的存储程序与函数。
mysql_native_password身份验证插件有什么变化?
mysql_native_password身份验证插件已被删除,MySQL 9.0服务器将拒绝来自旧客户端的身份验证请求。
创建包含VECTOR列的InnoDB表有什么限制?
VECTOR列不能用作任何类型的键,且不支持与其他类型的比较。
MySQL 9.0的更新是否推荐?
社区建议不要升级到MySQL 9.0,因为已报告一个关键错误。
下一个季度的MySQL版本更新内容是什么?
下一个季度的版本预计将在十月发布,包括MySQL 8.4.2 LTS和MySQL 8.0.39的错误和安全修复,以及MySQL 9.1.0的创新版本。