---
title: 创建分区表错误，错误代码 1499/ORA-00600-OceanBase数据库使用指南
description: 了解OceanBase数据库在实际应用中关于创建分区表错误，错误代码 1499/ORA-00600相关的常见问题和使用技巧，帮助您快速解决创建分区表错误，错误代码 1499/ORA-00600的难题。
---
切换语言

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

划线反馈

# 创建分区表错误，错误代码 1499/ORA-00600

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

适用版本： V2.2.x、V3.1.x、V3.2.x 内容类型：Troubleshoot  

创建分区表错误时报 1499/ORA-00600 错误，提示分区数超限。本文介绍该问题的原因以及处理方法。

## 适用版本

OceanBase 数据库所有版本。

## 问题现象

建表失败并提示错误。

对于 MySQL 模式，错误信息如下。

```sql
ERROR 1499 (HY000): Too many partitions (including subpartitions) were defined

```

对于 Oracle 模式，错误信息如下。

```sql
ORA-00600: internal error code, arguments: -5188, Too many partitions (including subpartitions) were defined

```

## 问题原因

根据错误代码，可知错误原因为建表的分区过多，因此查看建表的 SQL 语句，发现错误原因为表的分区数量超过了上限。OBServer 中分区过多后，会导致 Clog 主备 Keep Alive 的 RPC 开销增大、后台遍历分区的定时任务的开销增大、每个分区占用的内存增加、容灾场景下，系统恢复时间变慢。因此 OceanBase 数据库增加了分区表中分区数量的限制。

建表时，应注意以下两个限制条件：

- 建表语句指定创建的分区数量必须小于等于分区上限。

     - 对于 OceanBase 数据库 V1.X 版本，分区上限为 8192。
     - 对于OceanBase V2.X 及以后的版本中，对于不同的兼容模式，分区表的分区上限如下所示。

      | 兼容模式 | 分区上限 |
      | --- | --- |
      | MySQL 模式 | 8192 |
      | Oracle 模式 | 65536 |
 - 整个 OceanBase 集群范围内，每台物理机上的分区总数必须在分区上限以内，各版本的分区上限如下表所示。

  | 版本 | 每台物理机分区总数上限值 |
  | --- | --- |
  | V1.4.5 ~ V1.4.74 | 80000 |
  | V1.4.75 ~ V1.4.76 | 50000 |
  | V2.0 及以后的版本 | 50000 |

## 解决方法

1. 检查回收站中是否存在延迟删除的分区。

   ```sql
   obclient> SHOW RECYCLEBIN;

   ```

   如果存在，清理回收站。

   ```sql
   obclient> PURGE RECYCLEBIN;

   ```
 2. 如果回收站中的分区数量不足以影响到创建分区表，则可能是因为该物理机上已存在的分区数量达到上限，需要删除部分表或分区，再执行回收站清理。

   您可使用 root 用户登录数据库的 sys 租户执行以下命令查看各个 server 上的分区个数分布。

      - 对于 V1.x 版本

       ```sql
       obclient> SELECT zone, svr_ip, count(1) cnt FROM __all_meta_table GROUP BY svr_ip ORDER BY zone,cnt desc;

       ```
      - 对于 V2.x 版本及后续版本

       ```sql
       obclient> SELECT zone, svr_ip, count(1) cnt from __all_virtual_meta_table GROUP BY svr_ip ORDER BY zone,cnt desc;

       ```

       清理租户后需等待 1~2 小时，保证已删除的分区资源已回收。

       修改建表语句，将分区数量指定为小于等于分区上限。其中 `table_name` 为分区表名称。

       ```sql
       obclient> DROP TABLE table_name;
       obclient> PURGE RECYCLEBIN;

       ```
 3. 暂停租户中 TPS 事务，等待 1~2 小时后内存回收，即可重新创建表。
 4. 如果不能暂停 TPS 事务，需考虑租户内存扩容后再进行建表。

上一篇

[创建分区表错误，错误代码 1499](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000010175)

下一篇

[分区表更新错误，错误代码 1235](https://www.oceanbase.com/knowledge-base/oceanbase-database-20000000157) ![有帮助](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) 咨询热线
