---
title: "修改分区级冷热存储策略 - OceanBase 数据库 V4.6.0 | OceanBase 文档中心"
description: 修改分区级冷热存储策略 本文将向您介绍如何使用 SQL 语句修改分区级冷热存储策略（ STORAGE_CACHE_POLICY ）。 注意事项 在共享存储模式下，才可以修改分区级的冷热存储策略。 修改分区级别的冷热存储策略 分区表创建成功后，可以使用 ALTER TABLE 语句在增加分区时指定 STORAGE_CA…
---
切换语言

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

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

# 修改分区级冷热存储策略

更新时间：2026-07-15 15:16:39

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.6.0/zh-CN/660.ob-shared-storage/400.customize-hotspot-cache-of-mysql-mode/500.modify-partition-level-storage-cache-policy-of-mysql-mode.md)  

本文将向您介绍如何使用 SQL 语句修改分区级冷热存储策略（`STORAGE_CACHE_POLICY`）。

## 注意事项

在共享存储模式下，才可以修改分区级的冷热存储策略。

## 修改分区级别的冷热存储策略

分区表创建成功后，可以使用 `ALTER TABLE` 语句在增加分区时指定 `STORAGE_CACHE_POLICY` 和修改分区 `STORAGE_CACHE_POLICY`，语法格式如下：

- 增加分区时指定 `STORAGE_CACHE_POLICY`：

  ```sql
  ALTER TABLE table_name
      ADD PARTITION (partition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "cold" | "none"}]);

  ```
 - 修改分区 `STORAGE_CACHE_POLICY`：

  ```sql
  ALTER TABLE table_name
      ALTER PARTITION (partition_list [STORAGE_CACHE_POLICY = {"hot" | "auto" | "cold" | "none"}]);

  ```

### 相关参数说明

分区级的 `STORAGE_CACHE_POLICY` 为可选项，取值如下：

- `hot`：表示指定分区的所有数据都为热数据，在缓存盘空间足够的情况下，分区下所有数据将会缓存到本地缓存盘。
 - `auto`：表示指定分区的热数据为系统自动识别。
 - `cold`：表示指定分区数据为冷数据，不会缓存到本地缓存盘，对于已经持久化到缓存的数据会主动触发缓存淘汰，后续访问的表数据可以存储在宏块内存缓存，不会持久化到宏块缓存和微块缓存。
 - `none`：默认值，表示该分区的冷热存储策略跟随上一级的 `STORAGE_CACHE_POLICY` 取值。

更多有关修改分区表的详细介绍，参见 [添加分区](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005683157) 和 [修改分区规则](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005683154)。

## 示例

- 向表 `tbl1` 中新增分区 `p2`，分区 `p2` 中需要缓存到本地盘的热数据由系统自动识别。

  ```sql
  ALTER TABLE tbl1 ADD PARTITION (PARTITION p2 VALUES LESS THAN(300) STORAGE_CACHE_POLICY = "auto");

  ```
 - 修改表 `tbl1` 中已有的一级分区 `p1` 中的数据为热数据。

  ```sql
  ALTER TABLE tbl1 ALTER PARTITION p1 STORAGE_CACHE_POLICY = "hot";

  ```
 - 修改表 `tbl2` 中二级分区 `sp3` 中需要缓存到本地盘的数据由系统自动识别。

  ```sql
  ALTER TABLE tbl2 ALTER SUBPARTITION sp3 STORAGE_CACHE_POLICY = "auto";

  ```

## 相关文档

- [自定义冷热存储策略概述](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005681922)
 - [创建表级冷热存储策略](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005681925)
 - [创建分区级冷热存储策略](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005681919)
 - [修改表级冷热存储策略](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005681924)
 - [ALTER TABLE](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005686147)
 - [自定义冷热存储策略运维指南](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000005681920)

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