首批通过分布式安全可靠测评,为关键业务系统打造
DBMS_DATA_DICT
更新时间:2026-06-17 16:25:38
DBMS_DATA_DICT 用于控制数据字典的调度。
语法
禁止调度数据字典
CALL DBMS_DATA_DICT.DISABLE_DUMP();
注意
如果执行时字典配置项 dump_data_dictionary_to_log_interval 不为 0,则执行失败,并提示用户设置该配置项为 0。
允许调度数据字典
CALL DBMS_DATA_DICT.ENABLE_DUMP();
手动触发生成字典
CALL DBMS_DATA_DICT.TRIGGER_DUMP(DICT_ITEM_RETENTION_BY_DAY);
调整字典的定时 DUMP 周期
CALL DBMS_DATA_DICT.MODIFY_DUMP_INTERVAL(INTERVAL_EXPR);
会触发调度生成字典的场景:
租户建立后会立即自动触发生成一次数据字典。
开启归档时会立即自动触发生成一次数据字典。
注意
执行时需要字典 DUMP 服务为开启状态(即先执行 ALL DBMS_DATA_DICT.ENABLE_DUMP() ),否则会执行失败。
调整字典历史记录的回收间隔
CALL DBMS_DATA_DICT.MODIFY_DICT_ITEM_RETENTION(DICT_ITEM_RETENTION_BY_DAY)
参数解释
| 参数 | 说明 | 数据类型 |
|---|---|---|
| DICT_ITEM_RETENTION_BY_DAY |
|
INT |
| INTERVAL_EXPR | 表示期望的调度周期。该参数需遵循 DBMS_SCHEDULER 的 REPEAT_INTERVAL 的书写格式,并用单引号包裹。例如 'FREQ=MINUTELY; INTERVAL=120'。其中:
INTERVAL_EXPR。 |
TEXT |
| DICT_ITEM_RETENTION_BY_DAY | 表示期望的字典历史记录回收时间,单位为天。 和 DBMS_DATA_DICT.TRIGGER_DUMP 携带参数的调用相比,这个存储过程执行后,后续的字典 DUMP 默认都会按照本次指定的时间来回收字典历史记录(除非手动执行带参数的 DBMS_DATA_DICT.TRIGGER_DUMP 存储过程)。 |
INT |
示例
禁止调度数据字典
CALL DBMS_DATA_DICT.DISABLE_DUMP();
Query OK, 0 rows affected
允许调度数据字典
CALL DBMS_DATA_DICT.ENABLE_DUMP();
Query OK, 0 rows affected
手动触发生成字典
CALL DBMS_DATA_DICT.TRIGGER_DUMP(7);
Query OK, 0 rows affected
调整字典的定时 DUMP 周期
CALL DBMS_DATA_DICT.MODIFY_DUMP_INTERVAL('FREQ=MINUTELY; INTERVAL=120');
Query OK, 0 rows affected
调整字典历史记录的回收间隔
CALL DBMS_DATA_DICT.MODIFY_DICT_ITEM_RETENTION(7);
Query OK, 0 rows affected