---
title: OceanBase 数据库 V4.x 的 Offline DDL 及注意事项-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于OceanBase 数据库 V4.x 的 Offline DDL 及注意事项相关的常见问题和使用技巧，帮助您快速解决OceanBase 数据库 V4.x 的 Offline DDL 及注意事项的难题。
---
切换语言

- 简体中文
- English

划线反馈

# OceanBase 数据库 V4.x 的 Offline DDL 及注意事项

更新时间：2026-05-21 09:16

适用版本： V4.0.x、V4.1.x、V4.2.x 内容类型：How-to  

本文简述 Offline DDL 及执行前注意事项。

Offline DDL 即执行时不允许 DML 同时对对象进行修改的 DDL 操作。

在 OceanBase 数据库 V4.2 版本，Offline DDL 列表如下。

| 分类 | 操作 | 耗时 | 备注 |
| --- | --- | --- | --- |
| 列操作 | 中间加列（before/after/first） | 和数据量有关，需要重整数据 | Oracle 模式不支持 |
| 列操作 | 重排列（before/after/first） | 和数据量有关，需要重整数据 | Oracle 模式不支持 |
| 列操作 | 添加自增列 | 和数据量有关，需要重整数据 |
| 列操作 | 修改为自增列 | 和数据量有关，需要查询数据 |
| 列操作 | 修改列类型 | 和数据量有关，需要重整数据 | Oracle 模式不支持 |
| 列操作 | 修改列为主键 | 和数据量有关，需要重整数据 |
| 列操作 |  | 添加/删除 stored 生成列 | 和数据量有关，需要重整数据 |
| 列操作 | 删列 | 和数据量有关，需要重整数据 |
| 列操作 | 混合列操作 | 和数据量有关，需要重整数据 | Oracle 模式支持 |
| 主键操作 | 加/删主键 | 和数据量有关，需要重整数据 |
| 表操作 | truncate 表 | 和是否有活跃事务有关 |
| 表操作 | 转换字符集 | 和数据量有关，需要重整数据 | Oracle 模式不支持 |
| 表操作 | 删表 | 和是否有活跃事务有关 |
| 分区操作 | 修改分区规则 | 和数据量有关，需要重整数据 |
| 分区操作 | 删除分区 | 和是否有活跃事务有关 | 锁分区 |
| 分区操作 | truncate 分区 | 和是否有活跃事务有关 | 锁分区 |

关于 Offline DDL 的注意事项：

- Offline DDL 在执行时，会走两表双写逻辑，即将老表的数据用新的 DDL schema 来重写到新表，会导致表空间的放大（2 倍）。因此在执行 Offline DDL 时，需要 DBA 判断集群资源是否支持和业务影响是否接受。
 - DML 执行时会加表级锁，与 Offline DDL 发生冲突。因此需要等待事务结束后才能执行 Offline DDL。

## 适用版本

OceanBase 数据库 4.x 版本。

Previous

[OceanBase 数据库 V4.x 版本 DDL 开启并行执行](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000366649)

Next

[并发 DDL 和 DML 操作报错 table schema ptr is null (ret=-4016](https://www.oceanbase.com/knowledge-base/oceanbase-database-1000000000614177) ![有帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*y6ocSqN8cqsAAAAAAAAAAAAAARQnAQ)![无帮助](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*BG9IQJyLHF8AAAAAAAAAAAAAARQnAQ)![反馈](https://gw.alipayobjects.com/mdn/ob_asset/afts/img/A*eTWdQKCRKHwAAAAAAAAAAAAAARQnAQ)[AI](https://www.oceanbase.com/obi) 咨询热线
