MySQL 9.0发布,好像也没更新啥

内容目录

介绍

MySQL 9.0版本已经发布,目前Release Note生成的时间为:2024-07-12 。我们来看看有哪些新特性。

存储过程/函数支持JavaScript

这个特新在MySQL的企业版中支持(跟我们常用的社区版没啥关系~,而且后端的朋友也不一定会使用JavaScript来创建一个Function)。

值得一提的是MySQL使用多语言引擎(MLE)支持。
来看看官方给的Demo:

CREATE FUNCTION gcd(a INT, b INT) 
RETURNS INT 
NO SQL 
LANGUAGE JAVASCRIPT AS
  $mle$
    let x = Math.abs(a)
    let y = Math.abs(b)
    while(y) {
      var t = y
      y = x % y
      x = t
    }
    return x
  $mle$
;

向量类型支持

MySQL 9.0 支持 VECTOR 列类型。向量是一种数据结构,由一列表面元组(4 字节浮点值)组成,值的表示方法可以是二进制字符串,也可以是列表格式的字符串。

MySQL支持向量数据库是为了能够支持数据分析和人工智能吗?

看个官方Demo:

mysql> CREATE TABLE v1 (c1 VECTOR(5000));
mysql> SELECT STRING_TO_VECTOR('[2, 3, 5, 7]');
+------------------------------------------------------+
| TO_VECTOR('[2, 3, 5, 7]')                            |
+------------------------------------------------------+
| 0x00000040000040400000A0400000E040                   |
+------------------------------------------------------+
1 row in set (0.00 sec)

mysql> SELECT VECTOR_TO_STRING(0x00000040000040400000A0400000E040);
+------------------------------------------------------+
| VECTOR_TO_STRING(0x00000040000040400000A0400000E040) |
+------------------------------------------------------+
| [2.00000e+00,3.00000e+00,5.00000e+00,7.00000e+00]    |
+------------------------------------------------------+
1 row in set (0.00 sec)

外键约束增强

保存 EXPLAIN ANALYZE 的 JSON 输出

DDL event支持create, alter, drop

移除了mysql_native_password

总结

MySQL 9.0的更新看起来貌似不太给力。平时我们也不使用外键,函数和存储过程类,你优化下性能也好也。不过这些咱说了都不算~

发表评论

您的邮箱地址不会被公开。 必填项已用 * 标注

滚动至顶部