暂无图片
暂无图片
6
暂无图片
暂无图片
暂无图片

MySQL 9.3 正式 GA,我却大失所望,新特性亮点与隐忧并存?

369

大家好,我是 JiekeXu,江湖人称“强哥”,青学会 MOP 技术社区主席,荣获 Oracle ACE Pro 称号,墨天轮 MVP,墨天轮年度“墨力之星”,拥有 Oracle OCP/OCM 认证,MySQL 5.7/8.0 OCP 认证以及 PCA、PCTA、OBCA、OGCA、金仓KCA、KCP 等众多国产数据库认证证书,今天和大家一起来看看MySQL 9.3 正式 GA,我却大失所望,新特性亮点与隐忧并存?欢迎关注我的微信公众号“JiekeXu DBA之路”,然后点击右上方三个点“设为星标”置顶,更多干货文章才能第一时间推送,谢谢!

前 言

2025 年 4 月 15 日晚,MySQL 9.3 版本正式 GA(General Availability),作为备受期待的年度更新,官方宣传其在用户管理、开发工具链、高可用性等方面实现了多项改进。然而,在查看官方文档新特性后,不难发现这次更新更多是「挤牙膏」式的增量优化,核心创新不足、企业版功能割裂以及社区版用户权益受限等问题,难免让期待突破性变革的开发者感到失望。向量、AI 相关的特性等了一年了,我是没有看到,小伙伴们看到了吗?

一、用户管理与备份:精细化操作的进步与局限

新特性亮点

MySQL 9.3为数据库管理员带来了更精细的用户账户管理工具。mysqldump新增的--users系列选项,支持导出用户账户的逻辑备份,可生成包含CREATE USERGRANT语句的脚本,同时通过--include-user--exclude-user实现对特定账户的精准过滤。这对于多租户环境下的权限迁移、灾备恢复场景非常实用,避免了手动编写用户权限脚本的繁琐。

失望点

这一功能本质上是对现有备份工具的补完,并未解决用户管理的核心痛点。例如,依然缺乏可视化的权限分析工具,管理员仍需依赖命令行和脚本处理复杂权限场景。且该功能仅提升了备份效率,未涉及权限审计、动态权限管理等更关键的企业级需求,对大型团队而言价值有限。

二、JavaScript生态增强:企业版的「专属盛宴」

新特性亮点

针对使用JavaScript开发存储程序的用户,MySQL 9.3带来了多项改进:

  • DECIMAL类型支持:JavaScript存储程序首次完整支持DECIMAL数据类型,默认转换为String保持精度,也可通过配置转为Number,解决了此前数值类型处理的兼容性问题。
  • 本地化与国际化:通过Intl对象支持MySQL locale设置,开发者可在JavaScript中实现日期、数字的本地化格式化,例如将sv_SE转换为sv-SE格式,满足全球化应用需求。
  • 库管理增强ALTER PROCEDUREALTER FUNCTION支持动态修改导入库列表,新增SHOW LIBRARY STATUS语句便于监控JavaScript库状态,提升了开发调试效率。

失望点

所有JavaScript相关特性均依赖MySQL企业版的多语言引擎组件(MLE),社区版用户无法使用。这意味着中小型团队和个人开发者无法享受这些便利,进一步加剧了社区版与企业版的功能割裂。此外,JavaScript存储程序的应用场景本身较窄,对主流的Java、Python开发生态影响有限,难以成为吸引用户升级的核心卖点。

三、高可用性与复制:渐进式优化下的「换汤不换药」

新特性亮点

在高可用性领域,MySQL 9.3推出了组复制主选举组件,当主节点故障时,该组件会优先选择事务延迟最小的从节点提升为主节点,确保数据一致性。通过状态变量Gr_latest_primary_election_by_most_uptodate_members_trx_delta和时间戳Gr_latest_primary_election_by_most_uptodate_member_timestamp,管理员可精准监控选举过程。此外,InnoDB存储引擎新增容器感知的资源分配,根据容器的CPU和内存限制动态调整默认配置,提升了云环境下的部署灵活性。

失望点

组复制功能自5.7版本推出以来,一直面临配置复杂、性能损耗等问题,此次更新并未解决核心架构缺陷,仅在选举策略上做了优化。对于依赖传统主从复制的用户而言,新组件的学习成本较高,且实际生产环境中,因网络分区等复杂场景导致的选举失败问题仍需人工介入。此外,replica_parallel_workers最小值强制设为1,移除了0的选项,可能对旧版迁移用户造成兼容性困扰。

四、查询优化与性能:细节改进难掩创新乏力

新特性亮点

查询优化器的改进是本次更新的另一重点:

  • 子查询优化扩展:支持更多量化比较谓词(如>ANY<ALL等)转换为派生表连接,且优化范围从WHERE子句扩展到SELECT子句,提升了包含子查询的复杂查询性能。
  • InnoDB性能修复:修复了空间索引校验、悲观锁冲突等多个潜在崩溃问题,通过CHECK TABLE EXTENDED验证空间索引的MBR一致性,增强了数据完整性。

失望点

这些改进均属于「修修补补」,缺乏像MySQL 8.0引入CTE(公用表表达式)或窗口函数那样的突破性优化。例如,针对OLAP场景的分析型查询优化依然薄弱,与PostgreSQL、ClickHouse等专业分析数据库的差距未被缩小。此外,官方未公布具体的性能 benchmark 数据,开发者难以量化评估优化效果,实际生产环境中可能仍需依赖外部工具进行查询调优。

五、兼容性与生态:升级风险与功能割裂

失望点汇总

  • 降级限制:9.3版本明确禁止在同一系列版本间降级(如从9.3.1降回9.3.0),增加了版本回退的运维风险,对依赖滚动升级的大型集群不够友好。
  • 企业版专属壁垒:除JavaScript特性外,组复制主选举组件、选项跟踪器对Hypergraph Optimizer的支持等核心功能均属于企业版,社区版用户只能使用基础功能,违背了MySQL开源生态的初衷。
  • 编译与平台适配:在Fedora等Linux发行版上因OpenSSL引擎接口调整导致编译问题,Windows平台的配置器CLI仍存在路径识别、端口兼容性等老问题,开发者需花费额外精力处理环境适配。

总结:增量更新下的用户抉择

MySQL 9.3 的 GA 版本,更像是一次「常规体检」而非「华丽转身」。新特性集中在细分场景优化和企业版功能强化,社区版用户获得的实质提升有限,且面临升级兼容性风险。对于依赖MySQL核心功能的中小企业和开发者而言,此次更新缺乏足够的吸引力,甚至可能因强制配置变更(如replica_parallel_workers)带来迁移成本。

在数据库技术百花齐放的当下,PostgreSQL 通过开源生态实现功能反超,OceanBase、TiDB 等在分布式场景持续突破。MySQL 若想重拾开发者信心,或许需要在下一代版本中拿出更具颠覆性的创新——比如真正开源的分布式事务支持、AI驱动的智能优化器,而非仅在企业版中堆砌「专属功能」。毕竟,社区的失望,才是最危险的信号。

参考链接

https://dev.mysql.com/doc/refman/9.3/en/mysql-nutshell.html
https://mp.weixin.qq.com/s/yfVhJMsJXCiWYAMichxM_A
https://dev.mysql.com/doc/relnotes/mysql/9.3/en/
复制

全文完,希望可以帮到正在阅读的你,如果觉得有帮助,可以分享给你身边的朋友,同事,你关心谁就分享给谁,一起学习共同进步~~~

❤️ 欢迎关注我的公众号【JiekeXu DBA之路】,一起学习新知识!
——————————————————————————
公众号:JiekeXu DBA之路
墨天轮:https://www.modb.pro/u/4347
CSDN :https://blog.csdn.net/JiekeXu
ITPUB:https://blog.itpub.net/69968215
腾讯云:https://cloud.tencent.com/developer/user/5645107
——————————————————————————

最后修改时间:2025-04-16 10:07:02
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

目录
  • 前 言
  • 一、用户管理与备份:精细化操作的进步与局限
    • 新特性亮点
    • 失望点
  • 二、JavaScript生态增强:企业版的「专属盛宴」
    • 新特性亮点
    • 失望点
  • 三、高可用性与复制:渐进式优化下的「换汤不换药」
    • 新特性亮点
    • 失望点
  • 四、查询优化与性能:细节改进难掩创新乏力
    • 新特性亮点
    • 失望点
  • 五、兼容性与生态:升级风险与功能割裂
    • 失望点汇总
  • 总结:增量更新下的用户抉择
  • 参考链接