---
title: "创建随机分布表 - OceanBase 数据库 V5.0.1 | OceanBase 文档中心"
description: 创建随机分布表 OceanBase 数据库可以通过指定 PARTITION BY RANDOM 显示创建随机分布表。 使用限制及注意事项 主键要求：无主键。 分区层级：仅支持一级分区，不支持子分区。 表类型：仅支持用户表，不支持临时表、系统表。 不支持 临时表、 CTAS （ CREATE TABLE AS SELE…
---
切换语言

- 中文站 - 简体中文
- International - English
- 日本站 - 日本語

文档反馈![](https://mdn.alipayobjects.com/huamei_22khvb/afts/img/A*P8CuR4UJ_FkAAAAAAAAAAAAADiGDAQ/original) OceanBase 数据库分布式版 - V 5.0.1

# 创建随机分布表

更新时间：2026-07-29 16:32:27

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V5.0.1/zh-CN/700.reference/300.database-object-management/200.manage-object-of-oracle-mode/200.manage-partitions-of-oracle-mode/270.random-partition-table-of-oracle-mode/200.create-a-random-partition-table-of-oracle-mode.md)  

OceanBase 数据库可以通过指定 `PARTITION BY RANDOM` 显示创建随机分布表。

## 使用限制及注意事项

- 主键要求：无主键。
 - 分区层级：仅支持一级分区，不支持子分区。
 - 表类型：仅支持用户表，不支持临时表、系统表。
 - 不支持 临时表、`CTAS`（`CREATE TABLE AS SELECT`）。
 - 不支持 `LOCAL` 唯一索引，唯一索引必须为 `GLOBAL` 类型。
 - 不支持加入表组（`TABLEGROUP`）。
 - 不支持从非随机分布表 `ALTER` 为随机分布表。
 - 不支持对随机分布表做分区操作（`DROP/SPLIT/EXCHANGE/TRUNCATE PARTITION`）。

## 权限要求

创建创建随机分布表需要有 `CREATE` 权限。更多有关 OceanBase 数据库权限的详细介绍，参见 [Oracle 模式下的权限分类](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000006619034)。

## 显示创建随机分布表

### 语法

创建随机分布表的 SQL 语句格式如下：

```sql
CREATE TABLE [IF NOT EXISTS] table_name (table_definition_list)
    PARTITION BY RANDOM [SIZE('size_value')];

```

#### 参数说明

| **参数** | **描述** |
| --- | --- |
| table_name | 表名称。 |
| SIZE('size_value') | 可选项，用于指定每个分区的数据容量阈值，超出后触发自动新增分区。取值范围 [1MB, +∞)，支持 `MB`、`GB` 等单位。如果不指定 `SIZE('size_value')` 参数，则该选项取值与配置项 [auto_split_tablet_size](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000006618619) 的值相同。 |

更多有关创建表语法的详细参数说明信息，参见 [CREATE TABLE](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000006620917)。

### 示例

- 使用默认分区大小创建随机分布表 `tbl1`。

  ```shell
  obclient> CREATE TABLE tbl1(
      col1 INT,
      col2 VARCHAR2(1024)
      )
      PARTITION BY RANDOM;

  ```
 - 创建随机分布表 `tbl2`，并指定分区大小为 4GB。

  ```shell
  obclient> CREATE TABLE tbl2(
      col1 INT,
      col2 VARCHAR2(1024)
      )
      PARTITION BY RANDOM SIZE('4GB');

  ```

## 相关文档

- [随机分布表概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000006619110)
 - [修改随机分布表](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000006619111)

 上一篇 下一篇 ![有帮助](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) 咨询热线
