没想到MySQL 9.0这么拉胯

MySQL 7月1号发布了9.0版本,然而没想到并没有引起大家的狂欢,反而是来自DBA圈子的一篇吐槽,尤其是PG界吐槽更厉害。

难道MySQL现在真的这么拉胯了?本着好奇的态度,我也去下载了MySQL9.0的手册看了一下。确实有点让我大跌眼镜,难怪大家都认为这几年MySQL 官方team 是不是都在摸鱼?

MySQL 9.0不推荐使用

首先我们先不说这个版功能如何,性能如何,单纯的就看这个版本的生命周期就知道,太短了。真的不太适合上生产。当然,如果你觉得升级能够很随意的进行,那么请随意。

alt

我们可以看到很多版本实际上都是创新版本,并非LTS版本,因此其支持周期是非常短暂的。

这类似openGauss6.0 RC-1版本,实际上周期就半年。

MySQL 9.0 新增Javscript能力(MogDB能支持吗?)

我们知道对于javascript的处理,通常是利用json相关函数来处理,因此MySQL 8.x和9 引入了不少的json函数。

实际上我测试,很多json函数MogDB 5.0都支持了,其中一些函数名称有些差异。

当然,如果在openGauss或者MogDB上直接用过函数或者包去存javascript 执行代码,目前是暂时不支持的。

[omm2@mogdb1 ~]$ gsql -r -d test -U roger
Password for user roger: 
gsql ((MogDB 5.0.7 build c4707384) compiled at 2024-05-24 10:51:53 commit 0 last mr 1804 )
Non-SSL connection (SSL connection is recommended when requiring high-security)
Type "help" for help.

test=> 
test=> select json_object('{a,1,b,2,3,NULL,"d e f","a b c"}');
                      json_object                      
-------------------------------------------------------
 {"a" : "1""b" : "2""3" : null, "d e f" : "a b c"}
(1 row)

test=> 
test=> CREATE TABLE t1 (c1 JSON);
CREATE TABLE
test=> INSERT INTO t1 VALUES
test-> ('{"x": 17, "x": "red"}'),
test-> ('{"x": 17, "x": "red", "x": [3, 5, 7]}');
INSERT 0 2
test=> select * from t1;
                  c1                   
---------------------------------------
 {"x": 17, "x""red"}
 {"x": 17, "x""red""x": [3, 5, 7]}
(2 rows)

test=> 

比如其中提到的json_extract函数,在MogDB中的名称不太一样。实际上extract相关函数有好几个,例如:

test=> select json_extract_path('{"f2":{"f3":1},"f4":{"f5":99,"f6":"stringy"}}''f4','f6');
 json_extract_path 
-------------------
 "stringy"
(1 row)

test=> select json_extract_path_text('{"f2":{"f3":1},"f4":{"f5":99,"f6":"stringy"}}''f4','f6');
 json_extract_path_text 
------------------------
 stringy
(1 row)

test=> select json_extract_path_text_op('{"f2":{"f3":1},"f4":{"f5":99,"f6":"stringy"}}''{f4,f6}');
 json_extract_path_text_op 
---------------------------
 stringy
(1 row)

test=> 

如果大家想了解json、jsonb相关的函数,可以直接看MogDB的官方文档就好了。https://docs.mogdb.io/zh/mogdb/v5.0/json-functions

MySQL9.0引入向量vector(MogDB 5.0能支持吗?)

要说MySQL 9.0的另外一项相对拿的出的功能,那一定是向量了,毕竟这几年向量比较火。

目前MogDB 5.x版本暂时还不支持,但是openGauss 6.0 已经支持了,因此MogDB6.0(预计2025年3月30号发布)也会支持这个特性。

openGauss=# CREATE Extension datavec;
openGauss=# CREATE TABLE items (val vector(3));

openGauss=# INSERT INTO items (val) VALUES ('[1,2,3]'), ('[4,5,6]');

openGauss=# CREATE INDEX ON items USING ivfflat (val vector_l2_ops) WITH (lists = 100);
openGauss=# CREATE INDEX ON items USING ivfflat (val vector_ip_ops) WITH (lists = 100);
openGauss=# CREATE INDEX ON items USING ivfflat (val vector_cosine_ops) WITH (lists = 100);

另外包括一些其他小的功能性增强,比如MySQL 9.0 引入的event功能,比如create/alter/drop event DDL用法。

实际上这个功能,OpenGauss6.0也已经支持了,因此在后面即将发布的MogDB6.0 也应该会支持这个功能。

--创建一个定时任务
openGauss=# CREATE TABLE t_ev(num int);

openGauss=# CREATE EVENT IF NOT EXISTS event_e1 ON SCHEDULE AT sysdate() + interval 5 second + interval 33 minute DISABLE DO insert into t_ev values(0);

--修改定时任务
--修改定时任务状态和待执行语句
openGauss=# ALTER EVENT event_e1 ENABLE DO select 1;

--修改定时任务名
openGauss=# ALTER EVENT event_e1 RENAME TO event_ee;

就简单分享这几点吧。

本文由 mdnice 多平台发布

  • 3
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。 经导师精心指导并认可、获 98 分的毕业设计项目!【项目资源】:微信小程序。【项目说明】:聚焦计算机相关专业毕设及实战操练,可作课程设计与期末大作业,含全部源码,能直用于毕设,经严格调试,运行有保障!【项目服务】:有任何使用上的问题,欢迎随时与博主沟通,博主会及时解答。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值