当前位置: 首页 > news >正文

数据库管理-第349期 Oracle DB 23.9新特性一览(20250717)

数据库管理349期 2025-07-17

  • 数据库管理-第349期 Oracle DB 23.9新特性一览(20250717)
    • 1 JavaScript过程和函数的编译时语法检查
    • 2 不再需要JAVASCRIPT上的EXECUTE权限
    • 3 GROUP BY ALL
    • 4 使用SQL创建并测试UUID
    • 5 IVF索引在线重组
    • 6 JSON到二元性迁移器:使用JSON schema进行模式推理
    • 7 数据库认证的多因素认证
    • 8 多语言引擎支持数据库驻留连接池
    • 9 非位置INSERT INTO SET子句
    • 10 Oracle更新建议助手
    • 11 Oracle FPP支持Oracle更新助手
    • 12 分区维护操作和直接加载全局IVF和HNSW索引
    • 总结

数据库管理-第349期 Oracle DB 23.9新特性一览(20250717)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database
PostgreSQL ACE Partner10年数据库行业经验
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP,ITPUB认证专家
圈内拥有“总监”称号,非著名社恐(社交恐怖分子)公众号:胖头鱼的鱼缸
CSDN:胖头鱼的鱼缸(尹海文)
墨天轮:胖头鱼的鱼缸
ITPUB:yhw1809
IFClub:胖头鱼的鱼缸
除授权转载并标明出处外,均为“非法”抄袭

胖头鱼的鱼缸4_01.png
又到了一季度一次的Oracle DB 23ai小版本更新,之前的季度更新新特性可查看:
数据库管理-第225期 Oracle DB 23.5新特性一览(20240730)
数据库管理-第256期 Oracle DB 23.6新特性一览(20241031)
数据库管理-第287期 Oracle DB 23.7新特性一览(20250124)
数据库管理-第316期 Oracle DB 23.8新特性一览(20250417)
接下来一起看Oracle DB 23.9(2024起月补丁)带来了什么新特性。

1 JavaScript过程和函数的编译时语法检查

现在,对于使用内联调用规范执行的JavaScript函数,会在编译时进行语法检查,从而在运行时之前为代码提供有价值的分析。
当选择使用某种代码检查工具时,编译时的语法检查可以通过提供额外的代码分析步骤,帮助增强对代码准备状态的信心。这种编译时的支持与创建MLE模块时已有的检查相匹配。

2 不再需要JAVASCRIPT上的EXECUTE权限

用户账户运行JavaScript代码时,不再需要EXECUTE ON JAVASCRIPT权限。
现在,可以创建多语言引擎(Multilingual Engine,MLE)模块并执行内联调用规范来发布JavaScript函数,而无需额外授予EXECUTE ON JAVASCRIPT权限。这为使用MLE提供了更为简化的入门体验。

3 GROUP BY ALL

在包含聚合函数的复杂SELECT列表的SQL查询中,新的GROUP BY ALL子句消除了将所有非聚合列放入GROUP BY子句的需要。相反,新的ALL关键字表明结果应自动按所有非聚合列进行分组。
在GROUP BY子句中无需重复非聚合列,这使得编写SQL查询更快且更不易出错。用户可以使用GROUP BY ALL功能快速构建SQL查询原型或进行快速临时查询。

4 使用SQL创建并测试UUID

UUID是一种128位的通用唯一标识符,广泛应用于应用程序中,用于生成不可预测的随机值,该值可用作表中的主键、事务ID或任何形式的唯一标识符。在Oracle Database 23ai中,SQL函数UUID()根据UUID RFC 9562在数据库中生成版本4变体1的UUID。
UUID生成和操作函数提供了一种合规的方式来生成随机、唯一且不可预测的标识符,该标识符可用于填充数据库表中的主键列,以唯一标识事务ID(例如,用于Oracle Database 23ai中的无会话事务功能),以及用于许多其他目的。
现代应用程序期望能够生成不可预测且随机的UUID。所有主流数据库和数据管理系统都支持某种形式的UUID生成和操作。
当前的Oracle SQL操作符SYS_GUID()总是生成一个可预测的唯一标识序列,而这并不是最优的。

5 IVF索引在线重组

如果基表的更新改变了总体向量分布,那么IVF(索引)的质量可能会随时间降低。现在,在IVF索引仍可用于数据修改语言(DML)和查询时,可以对其进行重组。
如果源表在最初创建索引后发生显著变化,IVF索引可能会变得不平衡。这可能会影响索引的性能和质量。借助IVF索引在线重组功能,可以在索引保持在线且可用于数据修改语言(DML)和查询的同时,重组索引的结构。

6 JSON到二元性迁移器:使用JSON schema进行模式推理

此功能允许JSON到二元性迁移器使用用户提供的JSON schema进行关系schema推理。JSON schema可以单独提供,也可以与数据结合提供,以进行更准确的schema推理。
此功能使JSON到二元性迁移器更容易被那些可能没有大量JSON数据供迁移器分析或不想向迁移器发送机密数据的客户访问。只要每个集合都有JSON schema,他们仍然可以使用迁移器。

7 数据库认证的多因素认证

可以通过为用户启用多因素身份验证来增强Oracle数据库的安全性。您可以通过Cisco Duo或Oracle Mobile Authenticator应用程序使用推送通知,也可以将用户名和密码与基于PKI(公钥基础设施)证书的身份验证相结合。
多因素身份验证是许多数据库所必需的安全要求,特别是在数据库包含敏感数据的情况下。

8 多语言引擎支持数据库驻留连接池

Oracle数据库多语言引擎(Multilingual Engine)中的JavaScript现在可以使用数据库驻留连接池(DRCP)在数据库连接中使用。现在,您可以在DRCP会话中调用JavaScript过程和函数,并使用DBMS_MLE API。
DRCP的支持扩展了对数据库内JavaScript的访问,并允许使用数据库内JavaScript的工作负载利用DRCP的好处,例如提高了可扩展性。

9 非位置INSERT INTO SET子句

Oracle数据库添加了一个新的INSERT INTO SET子句,这是INSERT INTO语句的一种更简单、自文档化的语法。INSERT INTO语句的SET子句与UPDATE语句的现有SET子句相同。
新语法的好处是,可以立即清楚地知道INSERT INTO语句中的哪个值属于哪个列,对于当前具有数百列的INSERT INTO语句来说,这并不明显,也不麻烦。

10 Oracle更新建议助手

Oracle Update Advisor是一个软件更新推荐框架,它提供了将软件保持在推荐版本的信息。
使用Oracle Update Advisor简化了软件维护。结合数据库创建助手(DBCA)和舰队修补和资源调配(FPP)等工具,Oracle Update Advisor为您提供软件状态,并提供更新和维护建议。

11 Oracle FPP支持Oracle更新助手

可以将Oracle Update Advisor与Oracle舰队修补和资源调配(Oracle FPP)结合使用。Oracle Update Advisor是一个软件推荐框架,它分析Oracle数据库和Oracle网格基础架构的运行状况,提供补丁建议,并根据您的补丁维护策略创建功能齐全的黄金映像。这些黄金图像会自动下载到Oracle FPP黄金图像存储库中。
将Oracle Fleet Patching and Provisioning与Oracle Update Advisor结合使用,可以大大简化和优化更新体验。您可以将Oracle Update Advisor用于Oracle FPP本地模式和Oracle FPP中央服务器模式。

12 分区维护操作和直接加载全局IVF和HNSW索引

现在可以对具有全局IVF和HNSW索引的分区表执行分区维护操作。这些操作可以应用于使用各种方法(包括RANGE、LIST、HASH和COMPOSITE)分区的表。
可以在具有全局IVF和HNSW索引的表上执行分区维护操作,如添加、删除、合并和拆分分区。分区的一个关键好处是增加了灵活性,能够单独对表的子集(或分区)执行维护操作,而不会影响相邻分区中的行。这包括带有向量的表。

总结

与前面版本注重AI相关功能扩展不同,本次23.9更新更多的是面向23ai的常规数据库功能扩展。
老规矩,知道写了些啥。

http://www.dtcms.com/a/283628.html

相关文章:

  • python与正则:前后向断言、分组,以及案例练习
  • Xss-labs 1-8关的初步通关
  • 【Linux系统】进程地址空间
  • 时序数据库选型指南 —— 为什么选择 Apache IoTDB?
  • Qt Quick 粒子系统详解
  • 数据呈现高阶技巧:散点图与桑基图的独特价值
  • 从零开始学 Linux 系统安全:基础防护与实战应用
  • 12.9 Mixtral-8x7B核心技术解密:如何用1/3参数实现4倍推理速度碾压LLaMA2?
  • 取消office word中的段落箭头标记
  • 多方案对比分析:后端数据加密策略及实践
  • 菜单权限管理
  • 【Linux】LVS(Linux virual server)
  • zabbix安装(docker-compose)
  • 若依框架开启注册功能全流程指南
  • I3C Host Adapter Pro+ (3)
  • 36.在列表或字典中查找匹配项
  • CrewAI与LangGraph:下一代智能体编排平台深度测评
  • 数据分析全流程指南:从明确目标到数据呈现的实操方法论
  • Kiro vs Cursor: AI IDE 终极对比指南
  • github不能访问怎么办
  • mac OS上docker安装zookeeper
  • 3t车用手动卧式千斤顶设计含8张CAD图纸PDF图
  • 有n棍棍子,棍子i的长度为ai,想要从中选出3根棍子组成周长尽可能长的三角形。请输出最大的周长,若无法组成三角形则输出0。
  • 优先队列的实现
  • 基础算法题
  • 批判式微调(CFT):原理、架构与高效推理训练新范式
  • 基于vue + Cesium 的蜂巢地图可视化实现
  • 学习OpenCV---显示图片
  • 全局异常处理
  • 图示+例子 深入理解 前向反向传播