onstat -g sql 命令:打印与 SQL 有关的会话信息

可以使用 onstat -g sql 命令显示有关会话的 SQL 相关信息。

缺省情况下,只有 DBSA 可以查看 onstat -g sql syssqltrace 信息。然而当 UNSECURE_ONSTAT 配置参数设置为 1 时,所有的用户都可以查看该信息。

语法:
可以指定以下调用之一。
调用
解释
onstat -g sql
显示每个会话的单行摘要
onstat -g sqlsessionid
显示特定会话的 SQL 信息
注: 不显示加密函数中的加密密码和密码提示参数。下图显示了在 Last parsed SQL statement 字段显示加密密码。

图: onstat -g sql 命令输出

onstat -g sql 22
            
            Sess  SQL            Current            Iso Lock       SQL  ISAM F.E.          Current
            Id    Stmt type      Database           Lvl Mode       ERR  ERR  Vers Explain    Role
            22     -             test               CR  Not Wait    0    0   9.03 Off         hr
            Last parsed SQL statement :
            select id, name, decrypt_char(ssn, 'XXXXXXXXXX') from emp

输出描述

Sess id
会话标识
SQL Stmt type
SQL 语句类型
Current Database
会话的当前数据库的名称
ISO Lvl
隔离级别
DR
Dirty 读取
CR
已提交读取
CS
游标锁定
DRU
Dirty 读取,保留更新锁
CRU
已提交读取,保留更新锁
CSU
游标锁定,保留更新锁
LC
已提交读取,最后提交
LCU
已提交读取,最后提交,保留更新锁
RR
可重复的读取
NL
没有事务的数据库
Lock mode
当前会话的锁定方式
SQL Error
当前语句遇到的 SQL 错误号
ISAM Error
当前语句遇到的 ISAM 错误号
F.E. Version
当前客户端程序使用的 SQLI 协议的版本
Explain
SET EXPLAIN 设置
Current Role
当前用户的角色