版本信息
- 发布时间:2026 年 09 月 10 日
- 版本号:V4.4.2_CE_BP3
- RPM 版本号:oceanbase-ce-4.4.2.3-103000052026090811
升级说明
建议按以下路径升级至 V4.4.2_CE_BP3:
- 支持从 V4.4.2_CE/V4.4.2_CE_BP1/V4.4.2_CE_BP2 平滑升级到 V4.4.2_CE_BP3 版本。
- 支持从 V4.4.0_CE/V4.4.0_CE_BP1/V4.4.1_CE 平滑升级到 V4.4.2_CE_BP3 版本。
- 支持从 V4.3.5_CE/V4.3.5_CE_BP1~BP5 版本先经停 V4.3.5_CE_BP6 版本后,再升级到 V4.4.2_CE_BP3 版本。
- 支持从 V4.2.5_CE/V4.2.5_CE_BP1~BP6 版本先经停 V4.2.5_CE_BP7 版本后,再升级到 V4.4.2_CE_BP3 版本。
特性增强
-
高可用、主备与容灾
-
备份任务磁盘满行为优化:备份任务执行过程中,若目标服务器磁盘空间不足,任务会直接失败。为降低此类失败的概率,本版本优化了相关行为:调度备份任务前,磁盘使用率超过预设阈值的服务器不再参与调度;备份执行过程中遇到磁盘空间不足时,任务将自动重试,重试受最长等待时间限制,超时后任务失败。
-
支持日志备份能力:新增"归档备份"能力,将一级日志归档目的端
LOG_ARCHIVE_DEST中的较早的日志归档文件复制到独立的二级目的端BACKUP_ARCHIVE_DEST。主要用于分层或跨介质存储日志,一级存近期日志、二级存较早日志。 -
支持手动备份至不同存储目录:支持手动触发备份并写入与自动备份不同的存储目录,可在原有的备份策略外更灵活地创建备份数据集。
-
MySQL 兼容增强
-
MySQL 模式支持 PL 异步化:MySQL 模式下支持 PL 执行异步化,将可异步执行的 PL 逻辑调度到后台,降低长耗时 PL 对会话与租户响应的影响。
-
性能优化
-
PL 执行性能优化:复杂类型构造函数预计算、表达式支持 LLVM 编译执行、UDT 内存管理优化、匿名块参数化支持注释场景、优化 DML 语句中复杂类型的内存使用策略。
-
执行性能优化:中等规模并行执行(并行度 4000)性能优化、远程读(DAS)性能优化。
-
存储性能优化:百万级分区场景的转储冻结优化、多 IO 工作线程实现事务日志(clog)并行写入。
-
网络回包过大优化:优化 PS(Prepared Statement)场景下的元数据回包(控制参数
enable_ps_meta_response_optimize)。 -
分区分裂优化:优化分区分裂期间及分裂完成后的查询性能,降低分裂过程中的查询性能抖动。
-
Barrier 日志回放性能优化。
-
磁盘均衡策略优化:优化跨机/跨 Zone 的磁盘空间均衡调度策略,减少因数据分布不均产生的空间倾斜。原有机制主要依赖日志流组内的分区组交换,在部分日志流偏多而分区偏少、存在空日志流、或不同日志流组之间分区差异较大的场景中难以实现均衡。本次优化支持在日志流间迁移分区、跨日志流组交换分区组,以缩小日志流组间差距为目标进行均衡,尽量保证各 OBServer 节点间的磁盘空间均衡。
-
可观测性与诊断
-
SQL 查询计划缓存诊断增强:增强 SQL 查询计划缓存(Plan Cache)的诊断能力,便于 DBA 分析计划未命中、计划无法缓存、重复编译占比偏高等问题;可通过
[G]V$OB_PLAN_CACHE_STAT(含HIT_COUNT/HIT_RATE/PLAN_NUM等指标)与[G]V$OB_PLAN_CACHE_PLAN_STAT(含PLAN_STATUS/CREATE_REASON/PARAMS_VALUE等)查询。 -
ASH 锁诊断 & database 维度诊断增强:新增 ASH 锁诊断维度与 database 维度诊断,覆盖 SQL 计划、执行与性能诊断链路。
-
PS 场景诊断易用性增强:PS/PL 场景下生成的计划未记录参数信息,难以区分计划不优是计划共享还是计划生成不优导致。本版本在 PS 请求生成计划时将参数固化到 Plan Cache,并通过
[G]V$OB_PLAN_CACHE_PLAN_STAT.PARAMS_VALUE展示,便于 DBA 分析 PS 参数绑定与重载决议问题。 -
LOB 一致性校验和恢复:LOB 数据在主表与辅助表分离存储的场景下,可能因异常导致数据不一致。本版本提供完整的一致性保障方案:支持定时或手动触发主辅表一致性校验,检测主表存在而辅助表缺失、辅助表存在而主表缺失、数据长度不匹配三类异常;提供
dbms_lob_manager系统包进行数据修复、任务控制及进度监控;集成资源管理(Resource Manager)能力,支持对 LOB 一致性校验任务进行资源限制,防止后台扫描影响业务性能;新增DBA_OB_LOB_CHECK_TASKS和DBA_OB_LOB_CHECK_EXCEPTION_RESULT视图,实时展示任务进度与异常详情,解决 LOB 数据不一致导致的查询失败和磁盘膨胀问题。 -
其他特性
-
CPU 架构支持与性能优化:针对 AWS Graviton(ARM)处理器进行性能优化,优化后性能与 Intel 处理器基本持平。
-
Java UDF 适配沙箱:本版本将 Java UDF 运行时放入独立子进程(沙箱)执行,JVM 与 OBServer 主进程隔离,降低外部语言对 OBServer 主进程的影响。通过集群级配置项
ob_enable_java_udf_sandbox在「JNI 内嵌执行」与「沙箱隔离执行」之间切换(默认False,保留原有 JNI 内嵌 JVM 路径),切换需在系统租户下执行ALTER SYSTEM SET ob_enable_java_udf_sandbox = True;,需搭配新版本 Java SDK。 -
生态兼容与表达式能力增强:新增
retention函数、完善max_pt函数兼容行为、JSON 表达式支持参数化、动态分区支持字符串类型时间列。 -
PS 场景支持 format outline:PS/PL 场景下支持 Format Outline 绑定,一条 Format Outline 规则可覆盖不同 IN 参数个数的变体;生成计划时记录参数值,通过
[G]V$OB_PLAN_CACHE_PLAN_STAT.PARAMS_VALUE展示,便于区分计划生成不优与计划共享问题。 -
SaaS 场景 Outline 通配绑定(BINDING_RULE):新增
CREATE OUTLINE ... BINDING_RULE()语法,支持按数据库/租户维度做分库分表 Outline 绑定。MAP子句支持用正则表达式变量(如table_${S:[a-z]+}),支持跨库/跨表匹配 Outline,提升运维易用性。 -
用户密码支持 SM3 加密:新增独立认证插件
ob_sm3_password,使用 SM3 国密算法加密用户密码,满足等保与国产化密码合规要求。可通过系统变量default_authentication_plugin = 'ob_sm3_password'将其设为默认认证方式,并新增配置项ob_sm3_password_digest_rounds(默认 5000,范围 [5000, 4095000])控制摘要轮数(需MIN_DATA_VERSION >= 4.4.2.3)。 -
OBCDC 与数据同步
-
OBCDC 服务化(分布式 CDC):新推出分布式服务化 CDC 集群架构,分布式 CDC 将 CDC 拆分为多个独立且可水平扩展的服务角色:Coordinator(集群管理、任务调度与故障恢复)、LogFetchService(按 LS 抽取事务日志并本地缓存)、CDCWorker(事务组装、排序、REDO 解析与格式化)、MsgStorager(消息持久化至对象存储,支持可配置保留时长)、MsgService(多路归并排序、格式转换与客户端投递)。CDC 集群通过 ODP 统一接入,客户端无需感知内部拓扑。
适用场景包括:大规模租户的 CDC 链路(单机无法支撑全量日志处理)、大表单表同步(支持多客户端按行哈希分片并行消费)、MySQL 租户 Binlog 服务化输出(全租户级数据同步)以及下游多订阅方并发消费同一租户的不同订阅范围。
-
CDC 稳定性与性能增强:降低 CDC 进程的内存占用、CPU 开销与延迟抖动,提升单机/集中式 CDC 链路的稳定性。
产品行为变更
| 行为 | 变更前 | 变更后 | 影响 |
|---|---|---|---|
| 保留关键字/非保留关键字查询视图 | 该能力不可查(或未对外提供) | 新增系统视图 V$OB_KEYWORDS,含 KEYWORD/LENGTH/TYPE(SQL/PL)/RESERVED 列,支持查询保留/非保留关键字 |
便于 SQL 对象命名、SQL 迁移与模式兼容性检查 |
| ARRAY 元素类型与大小 | ARRAY 类型元素存在 16M 大小限制 | 支持 ARRAY(TEXT)/ARRAY(MEDIUMTEXT)/ARRAY(STRING)/ARRAY(LONGTEXT) 等 LOB/长文本元素(ARRAY(STRING) 等价 MEDIUMTEXT),ARRAY 支持 512M 限制 |
适用于 JSON/ARRAY 组合访问及迁移场景中数组元素为长文本的业务表 |
| 分区分裂阈值 | auto_split_tablet_size 默认值较低(2GB),tablet 较小时即触发自动分裂 |
默认值由 2GB 调整为 64GB,仅当 tablet 大小超过 64GB 才触发自动分裂,降低分裂频率与分裂过程中的查询性能抖动 | 依赖自动分裂的表升级后分裂行为可能变化(分裂更晚、次数更少),建议观察分裂频率;该默认值对已创建的自动分区表不生效,需按需重建或调整表级分裂阈值 |
| 外表读取带 BOM 的 UTF-8 数据文件 | OB 外表把文件头 BOM(EF BB BF)字节当普通字符,导致首列数据异常 | 外表 FORMAT 支持 byteordermark = {check\|nocheck} 属性,check 检测并跳过 BOM(不指定则不检测),适用于 CSV/文本外表 |
提升外表对带 BOM 文件的兼容性;需显式指定 check 才启用检测 |
| ROUND 对字符型输入的处理 | OB MySQL 模式对 ROUND(字符型/字符串, 2) 先转为 double,结果带两位小数(如 ROUND('1000',2) 返回 1000.00),与原生 MySQL 不一致 |
与原生 MySQL 对齐:字符型输入参与 ROUND 不再产生多余小数位(ROUND('1000',2) 返回 1000 等) |
提升 MySQL 兼容性;VARCHAR 列 ROUND 结果与原生 MySQL 一致,存量依赖旧行为的场景需复核 |
语法、函数与协议变更
| 类型 | 名称/语法 | 适用模式 | 说明 |
|---|---|---|---|
| 加密算法 | CREATE USER ... IDENTIFIED WITH ob_sm3_password / ALTER USER ... IDENTIFIED WITH ob_sm3_password |
MySQL | 新增独立认证插件,使用 SM3 国密算法加密用户密码,满足等保与国产化密码合规要求(可配合 default_authentication_plugin 设为默认认证方式、ob_sm3_password_digest_rounds 控制摘要轮数) |
| 函数 | retention |
MySQL | 新增 retention 函数,便于相关生态 SQL 迁移 |
| 函数 | max_pt |
MySQL | 完善 max_pt 函数的兼容行为 |
| PL 调度 | MySQL 模式 PL 异步化 | MySQL | 支持将可异步执行的 PL 逻辑调度到后台执行 |
| PL 语法 | ASYNC_COMMIT procedure 注解 / ob_enable_pl_async_commit |
MySQL | 通过 ASYNC_COMMIT 注解标记存储过程,在最后一个 commit 时以异步提交方式执行(默认关闭,需租户级开启) |
| 分区 DDL | 动态分区支持字符串类型时间列 | MySQL | 动态分区(自动建分区)支持以字符串类型时间列作为分区键 |
| SQL/PL | JSON 表达式参数化 | MySQL | JSON 提取类表达式支持参数化,降低相同结构的重复编译开销 |
| 协议/传输 | 大结果集网络回包优化 | MySQL | 优化高并发下网络回包过大引起的带宽占用与 TPS 瓶颈 |
| 外表/导入 | FORMAT (..., byteordermark = {check\|nocheck}) |
MySQL | 外表(CSV 等)读取时检测并跳过 UTF-8 BOM(check),不指定则不检测 |
| Outline | CREATE OUTLINE ... BINDING_RULE() |
MySQL | 支持分库分表场景 Outline 通配绑定 |
| 备份管理 | ALTER SYSTEM SET BACKUP_ARCHIVE_DEST = 'LOCATION=...' [TENANT = ...] |
MySQL | 设置归档备份目的端(二级介质),需与 LOG_ARCHIVE_DEST 路径不同;要求 MIN_DATA_VERSION >= 4.4.2.3 |
| 备份管理 | ALTER SYSTEM BACKUP ARCHIVELOG ALL [DELETE INPUT] [TENANT = ...] |
MySQL | 发起一次归档备份(异步任务);带 DELETE INPUT 表示本次全部成功后清理一级副本 |
| 备份管理 | ALTER SYSTEM BACKUP DATABASE TO '...' [PLUS ARCHIVELOG] |
MySQL | 用户租户人工备份至指定存储目录;PLUS ARCHIVELOG 表示备份并备份日志 |
| 备份管理 | ALTER SYSTEM BACKUP TENANT = ... TO '...' |
MySQL | 系统租户人工备份:仅允许且必须指定一个租户 |
| 备份管理 | ALTER SYSTEM ADD RESTORE SOURCE '...' / RESTORE ... FROM 'data_set,log_dest,backup_archive_dest' |
MySQL | 存在归档备份时,恢复需通过 add restore source 提供 BACKUP_ARCHIVE_DEST,或在 from uri 中补充归档备份目的端 |
配置项变更
| 配置项 | 类型 | 默认值 | 生效级别 | 适用租户 | 说明 |
|---|---|---|---|---|---|
ob_enable_java_udf_sandbox |
BOOL | False | 集群 | MySQL | 控制 Java UDF 是否运行在独立子进程(沙箱)内,与 observer 主进程隔离。开启后 JVM 与 observer 进程隔离,降低外部语言异常对主进程影响;需 Java SDK 先行发版联动 |
ob_enable_pl_async_commit |
BOOL | False | 租户 | MySQL | 控制 MySQL 模式 PL 异步提交;默认关闭,需租户级开启 |
enable_ps_meta_response_optimize |
BOOL | False | 租户 | MySQL | 开启后 PS 语句结果 meta 仅首次执行后返回,减少集群带宽消耗 |
BACKUP_ARCHIVE_DEST |
STRING | - | 集群 | MySQL | 日志归档的备份目的端;配置时校验 MIN_DATA_VERSION >= 4.4.2.3 |
视图变更
| 视图名 | 变更类型 | 说明 |
|---|---|---|
V$OB_KEYWORDS |
新增视图 | 提供 KEYWORD、LENGTH、TYPE、RESERVED 列,用于查询 SQL/PL 关键字及是否为保留关键字 |
DBA_OB_LOB_CHECK_TASKS、CDB_OB_LOB_CHECK_TASKS(sys 租户) |
新增视图 | 查看 LOB 校验和恢复任务的范围、状态、扫描进度及异常/修复数量,包含 TASK_SCOPE、TASK_ID、STATUS、SCAN_INDEX、MISS_CNT、MISMATCH_LEN_CNT、ORPHAN_CNT、CORRECT_CNT 等列 |
DBA_OB_LOB_CHECK_EXCEPTION_RESULT、CDB_OB_LOB_CHECK_EXCEPTION_RESULT(sys 租户) |
新增视图 | 查看 LOB 一致性异常的表、日志流、tablet 集合与异常类型,包含 TABLE_ID、TABLE_NAME、LS_ID、TABLET_IDS、INCONSISTENCY_TYPE 等列 |
CDB_OB_BACKUP_JOBS / DBA_OB_BACKUP_JOBS、CDB_OB_BACKUP_JOB_HISTORY / DBA_OB_BACKUP_JOB_HISTORY |
已有字段新增取值 | BACKUP_TYPE 新增 BACKUP_ARCHIVE、BACKUP_ARCHIVE_DELETE_INPUT,用于识别日志归档备份任务及备份后清理一级日志的任务;视图及字段均已存在 |
CDB_OB_ARCHIVELOG_PIECE_FILES / DBA_OB_ARCHIVELOG_PIECE_FILES |
新增列 | 新增 BACKUP_FILE_STATUS,展示日志 Piece 在归档备份目的端的状态;原有 FILE_STATUS 继续展示一级归档目的端状态 |
CDB_OB_BACKUP_DELETE_JOBS / DBA_OB_BACKUP_DELETE_JOBS、CDB_OB_BACKUP_DELETE_JOB_HISTORY / DBA_OB_BACKUP_DELETE_JOB_HISTORY |
已有字段新增取值 | TYPE 新增 DELETE BACKED UP ARCHIVELOG PIECE,用于识别清理已备份日志 Piece 的任务;视图及字段均已存在 |
GV$OB_PLAN_CACHE_PLAN_STAT / V$OB_PLAN_CACHE_PLAN_STAT |
新增列 | 新增 PARAMS_VALUE,展示 PS 请求生成计划时记录的参数值,便于区分计划生成与计划共享问题 |
GV$ACTIVE_SESSION_HISTORY / V$ACTIVE_SESSION_HISTORY、GV$OB_ACTIVE_SESSION_HISTORY / V$OB_ACTIVE_SESSION_HISTORY、DBA_WR_ACTIVE_SESSION_HISTORY、CDB_WR_ACTIVE_SESSION_HISTORY(sys 租户) |
新增列 | 新增 DATABASE_ID、HOLDER_SQL_ID、HOLDER_QUERY_SQL、ROWKEY,用于数据库维度及持锁会话相关诊断 |
DBA_OB_OUTLINES / DBA_OB_FORMAT_OUTLINES / DBA_OB_OUTLINE_CONCURRENT_HISTORY |
新增列 | 新增 PATTERN_RULES,展示 Outline 的模式匹配规则 |
CDB_TABLES(sys 租户)、DBA_TABLES |
已有列计算逻辑调整 | STORE_FORMAT 改为根据列组信息判断 ROW、COLUMN、ROW_WITH_COLUMN,字段名称及取值集合未新增 |
CDB_MVREF_STATS(sys 租户)、DBA_MVREF_STATS |
查询定义调整 | 视图查询增加优化器提示以关闭 rowgoal 优化,未新增列 |
周边配套
OceanBase 数据库 V4.4.2_CE_BP3 推荐使用的平台工具版本如下:
| 组件 | 版本 | 备注 |
|---|---|---|
| ODP | obproxy 4.3.6.5 | caching_sha2_password 与临时表路由策略优化需搭配 ODP 4.4.1;ob_sm3_password 需搭配 ODP 4.4.2.0(该版本待发布) |
| OCP | OCP 4.5.0 | - |
| ODC | ODC 4.5.0 | - |
| OBCDC | OBCDC 4.4.2.3 | - |
| OMS | 4.3.2 BP3 | 不涉及获取 4.4.2.2 版本增量数据的场景,可以使用 4.3.2 BP3;涉及获取增量数据的场景,暂不支持 |
| Binlog | Binlog 4368 | - |
| OCCI | occi 1.0.6 | - |
| OBCI | OBCI 2.1.1.3 | - |
| ECOB | ecob 1.2.1 | - |
| obclient | obclient 2.2.14 | - |
| libobclient | libobclient 2.2.14 | - |
| OBJDBC | JDBC 2.4.18 | - |
| ODBC | ODBC 2.0.9.9 | - |
| dotnet | dotnet 1.3.0 | - |
| obloader | 导数工具 4.3.7 | - |
| devdeps-java-extensions | 1.0.5 | - |