首批通过分布式安全可靠测评,为关键业务系统打造
ALTER MATERIALIZED VIEW LOG
更新时间:2026-04-07 20:57:20
描述
该语句用来修改物化视图日志(Materialized View Log,mlog)属性。
说明
对于 OceanBase 数据库 V4.3.5 版本,从 V4.3.5 BP1 版本开始支持 ALTER MATERIALIZED VIEW LOG 语句。
权限要求
执行 ALTER MATERIALIZED VIEW LOG 语句,需要当前用户拥有基表(普通表或物化视图)的 ALTER 权限。更多有关 OceanBase 数据库权限的详细介绍,请参见 Oracle 模式下的权限分类。
语法
ALTER MATERIALIZED VIEW LOG ON [schema.]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]]
parallel_clause:
NOPARALLEL
| PARALLEL integer
参数说明
| 参数 | 描述 |
|---|---|
| schema. | 可选项,指定物化视图日志基表所在的 Schema。如果省略 schema.,则默认基表在当前会话所在的 Schema 中。 |
| table_name | 指定物化视图日志对应的基表名称。 |
| alter_mlog_action_list | 表示可以对物化视图日志执行修改的操作列表。可以同时指定多个操作,使用英文逗号(,)分隔。详细介绍可参见下文 alter_mlog_action。 |
alter_mlog_action
parallel_clause:用于修改物化视图日志表的并行度。取值如下:NOPARALLEL:并行度为 1,默认配置。PARALLEL integer:指定并行度,integer取值为大于等于 1 的整数。
示例如下:
ALTER MATERIALIZED VIEW LOG ON tbl1 PARALLEL 5;PURGE [[START WITH expr] [NEXT expr]]:用于修改物化视图日志的后台清理任务的时间周期。[START WITH expr]:可选项,表示物化视图日志的首次清除时间。[NEXT expr]:可选项,表示下一次清除物化视图日志的时间。用于设置下一次清除物化视图日志的时间。
注意
请确保
START WITH expr和NEXT expr这两个时间表达式设定在未来的时间点,否则会引发错误。建议使用
current_date表示当前时区时间,时间表达式示例如下:从当前时间(
current_date)开始,每隔 10 秒清理一次过期的物化视图日志记录。START WITH current_date NEXT current_date + INTERVAL '10' SECOND从当前时间(
current_date)开始,每隔 10 小时清理一次过期的物化视图日志记录。START WITH current_date NEXT current_date + INTERVAL '10' HOUR表示从当前时间(
current_date)开始,每隔 1 天清理一次过期的物化视图日志记录。START WITH current_date NEXT current_date + 1
示例如下:
ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE START WITH current_date;ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE NEXT current_date + 1;ALTER MATERIALIZED VIEW LOG ON tbl1 PURGE START WITH current_date NEXT current_date + 1;