记录 DDL 命令(reg_ddl)
📄字数 600
👁️阅读量 加载中...
引入版本
v11.0.0
功能描述
用于控制是否将 DDL 类型的 SQL记录到 COMMAND 日志中,支持节点级的控制粒度。
参数属性
| 属性 | 属性值 |
|---|---|
| 参数类型 | BOOLEAN |
| 默认值 | FALSE |
| 取值范围 | TRUE,FALSE |
| 影响范围 | 系统级 |
| 修改方式 | 在线修改,立即生效 |
使用场景说明
- reg_ddl = true,系统无视 reg_command 的配置,DDL 并以 UTF8(UTF8_GENERAL_CI) 字符集编码格式将 DDL 请求记载至系统命令日志(COMMAND.LOG)。
| DDL 场景 | 对象类型 |
|---|---|
| ALTER | TABLE |
| DROP | DATABASE,SCHEMA,TABLE,SEQUENCE,VIEW, PROCEDURE,INDEX,TRIGGER,USER,ROLE,DB_LINK, SYNONYM,JOB,PACKAGE,POLICY |
| TRUNCATE | TABLE |
2.可访问系统表查看本地或所有节点的命令日志内容。
| 系统表 | 作用描述 |
|---|---|
| SYSDBA.SYS_COMMAND_LOG | 访问本地命令日志。 |
| SYSDBA.SYS_ALL_COMMAND_LOG | 访问集群内部所有节点的命令日志。 |
示例
查看是否记录SQL命令。
sqlSQL> show reg_ddl; +---------+ | REG_DDL | +---------+ | F | +---------+ (1 row)开启记录DDL命令。
sqlSQL> set reg_ddl on; Execute successful. -- 或者 SQL> set reg_ddl to true; Execute successful.
