系统运行日志-sys_all_command_log
功能描述
sys_all_command_log系统表用于查询所有节点记录的SQL命令,该表在启用记录SQL命令且生成COMMAND.LOG日志文件后,可查询结果,否则会报外部表文件不存在。
说明:
sys_all_command_log系统表在较低版本的数据库中不支持,详细信息请联系运维人员获取。
字段说明
序号 | 字段名 | 类型 | 说明 |
---|---|---|---|
0 | NODEID | INTEGER | 节点ID |
1 | DB_ID | VARCHAR | 库ID |
2 | USER | INTEGER | 用户名 |
3 | SESSION_ID | VARCHAR | 会话ID |
4 | CLIENT_IP | DATETIME | 客户端IP |
5 | EX_TIME | VARCHAR | SQL执行时间 |
6 | SQL_STR | VARCHAR | 执行SQL |
7 | SQL_PARAS | VARCHAR | - |
参数说明
当有传入参数时(如预处理语句),将记录传入参数信息,其记录格式如下:
{PN=参数个数,GN=参数组数 <参数序号,参数类型,参数值><参数序号,参数类型,参数值>...}
参数个数:本组传输的参数个数
参数组数:本组传输的参数所属的组数
参数序号:本组传输的当前参数序号,从 1 开始
参数类型:本组传输的当前参数类型,下述类型括号中数字为类型 ID
B
:表示类型为TYPE_BOOL(2)
的布尔数据I1
:表示类型为TYPE_I1(3)
的 1 字节整型数据I2
:表示类型为TYPE_I2(4)
的 2 字节整型数据I4
:表示类型为TYPE_I4(5)
的 4 字节整型数据I8
:表示类型为TYPE_I8(6)
的 8 字节整型数据R4
:表示类型为TYPE_R4(8)
的 4 字节浮点数据R8
:表示类型为TYPE_R8(9)
的 8 字节浮点数据S
:表示类型为TYPE_CHAR(30)
的字符串数据TID:0
:表示类型为上述类型之外的类型,其中0
将替换为类型 ID,若本参数值为NULL
,则0
将替换为NULL
参数值:本组传输的当前参数值
B
:输出真值T
或假值F
I1
:输出 1 字节整型值表示字符串I2
:输出 2 字节整型值表示字符串I4
:输出 4 字节整型值表示字符串I8
:输出 8 字节整型值表示字符串R4
:输出 4 字节浮点值表示字符串R8
:输出 8 字节浮点值表示字符串S
:输出由单引号'
包裹的字符串,最长为 128 字节- 当类型为上述类型之外的类型,不输出参数值部分
示例
- 记载集群所有节点的操作命令
- 可查看所有节点的操作记载
sql
SQL> SELECT * FROM sys_all_command_log;
NODEID | DB_ID | USER | SESSION_ID | CLIENT_IP | EX_TIME | SQL_STR | SQL_PARAS |
------------------------------------------------------------------------------
1 | 1 | SYSDBA| 176 | 192.168.2.222| 2022-05-09 16:24:42.000 AD | select * from sys_all_command_log limit 1;| <NULL>|
1 | 1 | SYSDBA| 176 | 192.168.2.222| 2022-05-09 16:24:57.000 AD | select * from sys_all_command_log;| <NULL>|
2 | 1 | SYSDBA| 57 | 192.168.2.223| 2022-05-09 16:11:44.000 AD | show max_idle_time| <NULL>|
2 | 1 | SYSDBA| 57 | 192.168.2.223| 2022-05-09 16:11:48.000 AD | SET REG_COMMAND ON;| <NULL>|
2 | 1 | SYSDBA| 57 | 192.168.2.223| 2022-05-09 16:12:09.000 AD | CREATE TABLE TEST1(D1 INT);| <NULL>|
3 | 1 | SYSDBA| 114 | 192.168.2.224| 2022-05-09 16:11:57.000 AD | show max_idle_time| <NULL>|
3 | 1 | SYSDBA| 114 | 192.168.2.224| 2022-05-09 16:12:00.000 AD | SET REG_COMMAND ON;| <NULL>|
3 | 1 | SYSDBA| 114 | 192.168.2.224| 2022-05-09 16:12:14.000 AD | DROP TABLE TEST1;| <NULL>|
相关系统表
sys_command_log
备注
- 开启记录SQL命令:SET reg_command ON
- 需要对集群中的每个节点进行操作并生成了COMMAND.LOG日志文件后,系统表sys_all_command_log生效,否则查询报表不存在