没想到MySQL 9.0这么拉胯
MySQL 7月1号发布了9.0版本,然而没想到并没有引起大家的狂欢,反而是来自DBA圈子的一篇吐槽,尤其是PG界吐槽更厉害。
难道MySQL现在真的这么拉胯了?本着好奇的态度,我也去下载了MySQL9.0的手册看了一下。确实有点让我大跌眼镜,难怪大家都认为这几年MySQL 官方team 是不是都在摸鱼?
MySQL 9.0不推荐使用
首先我们先不说这个版功能如何,性能如何,单纯的就看这个版本的生命周期就知道,太短了。真的不太适合上生产。当然,如果你觉得升级能够很随意的进行,那么请随意。
我们可以看到很多版本实际上都是创新版本,并非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 多平台发布
相关文章:
没想到MySQL 9.0这么拉胯
MySQL 7月1号发布了9.0版本,然而没想到并没有引起大家的狂欢,反而是来自DBA圈子的一篇吐槽,尤其是PG界吐槽更厉害。 难道MySQL现在真的这么拉胯了?本着好奇的态度,我也去下载了MySQL9.0的手册看了一下。确实有点让我大…...
开源 Wiki 系统 InfoSphere 2024.01.1 发布
推荐一套基于 SpringBoot 开发的简单、易用的开源权限管理平台,建议下载使用: https://github.com/devlive-community/authx 推荐一套为 Java 开发人员提供方便易用的 SDK 来与目前提供服务的的 Open AI 进行交互组件:https://github.com/devlive-commun…...
1.Introduction to Spring Web MVC framework
Web MVC framework 文档:22. Web MVC framework (spring.io) 概述 Web MVC框架(Web Model-View-Controller Framework)是一种用于构建Web应用程序的软件架构模式。MVC模式将应用程序分为三个主要组件:模型(Model&am…...
Onnx 1-深度学习-概述1
Onnx 1-深度学习-概述1 一: Onnx 概念1> Onnx 介绍2> Onnx 的作用3> Onnx 应用场景4> Onnx 文件格式1. Protobuf 特点2. onnx.proto3协议3> Onnx 模型基本操作二:Onnx API1> 算子详解2> Onnx 算子介绍三: Onnx 模型1> Onnx 函数功能1. np.random.rand…...
网络基础——udp协议
UDP协议(User Datagram Protocol,用户数据报协议)是OSI(Open System Interconnection,开放式系统互联)参考模型中一种无连接的传输层协议,它提供了一种简单的、不可靠的数据传输服务。以下是关于…...
分布式锁理解
介绍分布式锁,我觉得从项目的背景入手把 在伙伴匹配系统中,我创建了一个定时任务,做为缓存预热的手段 这个具体原因在Redis-CSDN博客 接下来切入正题: 想象每个服务器都有一个定时任务,都要对数据库或者缓存进行操…...
Android Gradle 开发与应用 (十): Gradle 脚本最佳实践
目录 1. 使用Gradle Kotlin DSL 1.1 什么是Gradle Kotlin DSL 1.2 迁移到Kotlin DSL 1.3 优势分析 2. 优化依赖管理 2.1 使用依赖版本管理文件 2.2 使用依赖分组 3. 合理使用Gradle插件 3.1 官方插件和自定义插件 3.2 插件管理的最佳实践 4. 任务配置优化 4.1 使用…...
c#获取本机的MAC地址(附源码)
在前一次的项目中,突然用到了这个获取本机的MAC地址,然后就研究了一下,记录下来,防止以后再用到, 使用winfrom做的,界面一个button,一个textBox,点了button以后给textBox赋值显示mac地址 附上源…...
sqlmap使用之-post注入、head注入(ua、cookie、referer)
1、post注入 1.1、方法一,通过保存数据包文件进行注入 bp抓包获取post数据 将数据保存到post.txt文件 加上-r指定数据文件 1.2、方法二、通过URL注入 D:\Python3.8.6\SQLmap>python sqlmap.py -u "http://localhost/login.php" --data "userna…...
XSS: 原理 反射型实例[入门]
原理 服务器未对用户输入进行严格校验,使攻击者将恶意的js代码,拼接到前端代码中,从而实现恶意利用 XSS攻击危害 窃取用户Cookie和其他敏感信息,进行会话劫持或身份冒充后台增删改文章进行XSS钓鱼攻击利用XSS漏洞进行网页代码的…...
Idea新增Module报错:sdk ‘1.8‘ type ‘JavaSDK‘ is not registered in ProjectJdkTable
文章目录 一,创建Module报错二,原因分析三,解决方案1,点击上图的加号,把JDK8添加进来即可2,点击左侧[Project],直接设置SDK为JDK8 四,配置检查与验证 一,创建Module报错 …...
基于RHCE基础搭建简单服务
目录 项目标题与需求一 配置IP地址server机node02机 二 配置web服务三 搭建dns服务器四 开启防火墙server firewalld 五 配置nfs服务器node02 nfsserver autofs 六 开启SELinux七 验证是否能访问www.rhce.com 项目标题与需求 项目标题: 项目需求: 现有…...
威纶通触摸屏软件离线仿真时出现报错8000端口占用或服务器断线
现象 威纶通触摸屏软件离线仿真时出现报错 显示8000端口被占用 或者是设备服务器断线的状态 处理方法 系统参数——HMI属性 端口号更改一下即可 或者关闭占用8000端口的应用 分享创作不易,请多多支持,点赞、收藏、关注! Ending~...
CAS详解
文章目录 CAS使用示例Unsafe类实现原理CAS问题 CAS CAS全称为Compare and Swap被译为比较并交换,是一种无锁算法。用于实现并发编程中的原子操作。CAS操作检查某个变量是否与预期的值相同,如果相同则将其更新为新值。CAS操作是原子的,这意味…...
【笔记】虚拟机中的主从数据库连接实体数据库成功后的从数据库不同步问题解决方法2
错误: Last_Errno: 1008 Last_Error: Coordinator stopped because there were error(s) in the worker(s). The most recent failure being: Worker 1 failed executing transaction ANONYMOUS at source log mysql-bin.000014, end_log_pos 200275. See error lo…...
【每日一练】python类和对象现实举例详细讲解
""" 本节课程目的: 1.掌握类描述现实世界实物思想 2.掌握类和对象的关系 3.理解什么事面向对象 """ #比如设计一个闹钟,在这里就新建一个类 class Clock:idNone #闹钟的序列号,也就是类的属性priceNone #闹…...
【学习css1】flex布局-页面footer部分保持在网页底部
中间内容高度不够屏幕高度撑不开的页面时候,页面footer部分都能保持在网页页脚(最底部)的方法 1、首先上图看显示效果 2、奉上源码 2.1、html部分 <body><header>头部</header><main>主区域</main><foot…...
Java中创建线程的几种方式
底层都是基于实现Runnable接口 1.继承thread类,new一个thread对象,实现run方法,无返回值 public class MyThread extends Thread {Overridepublic void run() {System.out.println("Thread created by extending Thread class is runn…...
[A-04] ARMv8/ARMv9-Cache的相关策略
ver0.2 前言 前面我们已经通过三篇文章反反复复的讲Cache的概念、结构、架构,相信大家对Cache已经大概有了初步的了解。这里简单归纳一下: (1) Cache从硬件视角看,是连接PE-Core和主存的一种存储介质,存储的数据是主存中数据的副本…...
【笔试常见编程题06】最近公共祖先、求最大连续bit数、二进制插入、查找组成一个偶数最接近的两个素数
1. 最近公共祖先 将一棵无穷大满二叉树的结点按根结点一层一层地从左往右编号,根结点编号为1。现给定a,b为两个结点。设计一个算法,返回a、b最近的公共祖先的编号。注意其祖先也可能是结点本身。 测试样例: 2,3 返回&a…...
解锁洛可可美学密码:用Midjourney V6实现蓬巴杜夫人级繁复纹样、柔光质感与粉金配色的5步精准控制法
更多请点击: https://intelliparadigm.com 第一章:洛可可美学的数字转译本质与Midjourney V6语义解码机制 洛可可美学以繁复卷曲的曲线、轻盈的不对称构图、粉金柔色调与自然母题(如贝壳、藤蔓、云朵)为标志,其核心并…...
合同系统功能详解:相对方管理
上一期,我们讲解了合同系统的业务功用。本期开始,我们将逐一对合同系统的核心功能进行拆解,结合实际业务场景展开详细讲解。今天,我们重点介绍合同系统中的相对方管理功能。 在实际业务落地过程中,不同企业的经营业态…...
2026年WMS软件怎么选?10款主流WMS软件功能对比与避坑指南
在2026年企业数字化转型的浪潮下,WMS软件(仓库管理系统)已经成为提升供应链效率的核心工具。面对市面上琳琅满目的产品,很多企业都在纠结2026年WMS软件怎么选才能避开那些“买得起用不起”的坑。本文将为您带来10款主流WMS软件的深…...
如何10倍提升英语学习效率:词达人自动化助手终极教程
如何10倍提升英语学习效率:词达人自动化助手终极教程 【免费下载链接】cdr 微信词达人,高正确率,高效简洁。支持班级任务及自选任务 项目地址: https://gitcode.com/gh_mirrors/cd/cdr 核心关键词:词达人自动化助手、Pytho…...
LeetCode 88:合并两个有序数组 | 双指针从后向前求解
LeetCode 88:合并两个有序数组 | 双指针从后向前求解 引言 合并两个有序数组(Merge Sorted Array)是 LeetCode 第 88 题,难度为 Easy,但却是双指针法应用的经典案例。题目要求将两个已排序的数组 nums1 和 nums2 合并…...
量子转导技术:微波与光学量子系统的桥梁
1. 量子转导技术概述量子转导技术是连接微波与光学量子系统的关键桥梁,其核心功能是实现不同频段量子信息的高保真转换。作为一名长期从事量子器件研发的工程师,我见证了这项技术从实验室走向实际应用的完整历程。简单来说,它就像量子世界的&…...
基于 PyTorch 的 TransU-Net 模型进行不同城市建筑物的精准提取 来继续遥感图像语义分割
基于 PyTorch 的 TransU-Net 模型进行不同城市建筑物的精准提取 来继续遥感图像语义分割 遥感图像语义分割,遥感建筑物数据集,基于Pytorch框架,针对不同城市建筑物精准提取。 遥感图像中包含丰富的地理空间信息,从遥感图像中了…...
告别本科论文 “从零焦虑”:okbiye AI 写作如何用 “全流程定制” 终结熬夜改稿循环
okbiye-免费查重复率aigc检测/开题报告/毕业论文/智能排版/文献综述/AI PPT毕业论文 - Okbiye智能写作https://www.okbiye.com/ai/bylw 本科论文写到崩溃,是每个毕业生都懂的痛。 我见过凌晨三点的宿舍走廊,有人对着 Word 文档掉眼泪;也见过…...
论完善代码版本信息构建AI在精工产业与智能设备短板—东方仙盟
出众的现代 AI时至今日,人工智能发展日新月异。在 UI 设计、网页开发、纯软件系统搭建等不依托实体硬件的领域,AI 表现已然成熟。常规信息化工作,AI 皆可独立完成,效率出众,为日常开发与设计减负良多。精工硬件领域 AI…...
【限时解密】ElevenLabs未公开的马来文SSML扩展语法:支持“Johor-Riau变体”、“Kedah重音标记”及连读停顿控制
更多请点击: https://intelliparadigm.com 第一章:ElevenLabs马来文语音合成的技术演进与本地化挑战 ElevenLabs自2022年推出多语言TTS服务以来,持续扩展其语音模型对东南亚语言的支持能力。马来文(Bahasa Melayu)作为…...
