---
title: "ALTER MATERIALIZED VIEW LOG - OceanBase 数据库 V4.5.0 | OceanBase 文档中心"
description: ALTER MATERIALIZED VIEW LOG 描述 该语句用来修改物化视图日志（Materialized View Log，mlog）属性。 权限要求 执行 ALTER MATERIALIZED VIEW LOG 语句，需要当前用户拥有基表的 ALTER 权限。更多有关 OceanBase 数据库权限的详细…
---
切换语言

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

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

# ALTER MATERIALIZED VIEW LOG

更新时间：2026-04-06 16:07:19

[编辑](https://github.com/oceanbase/oceanbase-doc/edit/V4.5.0/zh-CN/700.reference/500.sql-reference/100.sql-syntax/200.common-tenant-of-mysql-mode/600.sql-statement-of-mysql-mode/1251.alter-materialized-view-log-of-mysql-mode-in-sql.md)  

## 描述

该语句用来修改物化视图日志（Materialized View Log，mlog）属性。

## 权限要求

执行 `ALTER MATERIALIZED VIEW LOG` 语句，需要当前用户拥有基表的 `ALTER` 权限。更多有关 OceanBase 数据库权限的详细介绍，请参见 [MySQL 模式下的权限分类](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004479241)。

## 语法

```sql
ALTER MATERIALIZED VIEW LOG ON [database.]table_name alter_mlog_action_list;

alter_mview_action_list:
    alter_mlog_action [, alter_mlog_action ...]

alter_mlog_action:
    parallel_clause
    | PURGE [[START WITH expr] [NEXT expr]]
    | LOB_INROW_THRESHOLD [=] integer

parallel_clause:
    NOPARALLEL
    | PARALLEL integer

```

## 参数说明

| **参数** | **描述** |
| --- | --- |
| database. | 可选项，指定物化视图所在的数据库。如果省略 `database.`，则默认基表在当前会话连接的数据库中。 |
| table_name | 指定物化视图日志对应的基表名称。 |
| alter_mlog_action_list | 表示可以对物化视图日志执行修改的操作列表。可以同时指定多个操作，使用英文逗号（`,`）分隔。详细介绍可参见下文 [alter_mlog_action](#alter_mlog_action)。 |

### alter_mlog_action

- `parallel_clause`：用于修改物化视图日志表的并行度。取值如下：

     - `NOPARALLEL`：并行度为 1，默认配置。
     - `PARALLEL integer`：指定并行度，`integer` 取值为大于等于 1 的整数。

  **示例如下：**

  ```sql
  -- 首先创建基础表
  obclient> CREATE TABLE mvlog (
      id INT PRIMARY KEY,
      name VARCHAR(50)
  );

  -- 创建物化视图日志
  obclient> CREATE MATERIALIZED VIEW LOG ON mvlog;

  -- 设置并行度为 5
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog PARALLEL 5;

  -- 设置为无并行（默认）
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog NOPARALLEL;

  ```
 - `PURGE [[START WITH expr] [NEXT expr]]`：用于修改物化视图日志的后台清理任务的时间周期。

     - `[START WITH expr]`：可选项，表示物化视图日志的首次清除时间。
     - `[NEXT expr]`：可选项，表示下一次清除物化视图日志的时间。用于设置下一次清除物化视图日志的时间。  

  #### 注意

  请确保 `START WITH expr` 和 `NEXT expr` 这两个时间表达式设定在未来的时间点，否则会引发错误。

  建议使用 `sysdate()` 表示当前时区时间，时间表达式示例如下：

  ```sql
  START WITH sysdate() NEXT sysdate() + INTERVAL 1 DAY

  ```

  上述子句表示从当前时间（`sysdate()`）开始，每隔 1 天清理一次过期的物化视图日志记录。

  **示例如下：**

  ```sql
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog PURGE START WITH sysdate();

  ```

  ```sql
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog PURGE NEXT sysdate() + INTERVAL 1 DAY;

  ```

  ```sql
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog PURGE START WITH sysdate() NEXT sysdate() + INTERVAL 1 DAY;

  ```
 - `LOB_INROW_THRESHOLD [=] integer`：用于修改物化视图日志的 LOB 内联存储长度阈值，且只支持往大调整。

  #### 说明

  `LOB_INROW_THRESHOLD` 默认值为 8KB。mlog 的 `LOB_INROW_THRESHOLD` 默认值不受系统变量 [ob_default_lob_inrow_threshold](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004478742) 控制。

  **示例如下：**

  ```sql
  obclient> ALTER MATERIALIZED VIEW LOG ON mvlog LOB_INROW_THRESHOLD 10000;

  ```

## 相关文档

[物化视图日志](https://www.oceanbase.com/docs/common-oceanbase-database-cn-1000000004479322)

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