【Oracle】动态视图-V$MYSTAT、V$SESSTAT、V$SYSSTAT、V$STATNAME
V$MYSTAT
当前会话的统计信息
V$SESSTAT
实例所有会话的统计信息。
作用
- 查看各个 session 资源占用
- session 登陆后资源使用率
- 快照间资源占用比
常用列说明
SID :session 唯一 ID
STATISTIC# :资源唯一 ID
VALUE :资源使用
V$SYSSTAT
实例启动以来,所有统计项的累计值,常被用于监控系统性能以及系统资源利用率的变化
常用统计项
- CPU used by this session:所有 session 的 cpu 占用量,不包括后台进程。
- db block changes:那部分造成 SGA 中数据块变化的 insert,update 或 delete 操作数,这项统计可以大概看出整体数据库状态。
- execute count:执行的 sql 语句数量(包括递归 sql)
- logons current:当前连接到实例的 Sessions。
- logons cumulative:自实例启动后的总登陆次数。
- physical reads:OS blocks read 数。包括插入到 SGA 缓存区的物理读以及 PGA 中的直读这项统计并非 i/o 请求数。
- physical writes:从 SGA 缓存区被 DBWR 写到磁盘的数据块以及 PGA 进程直写的数据块数量。
- redo size:redo 发生的总次数(以及因此写入 log buffer),以 byte 为单位。这项统计显示出 update 活跃性。
- session logical reads:逻辑读请求数。
CLASS 列分类
1-事例活动
2-Redo buffer 活动
4-代表锁
8-数据缓冲活动
16-OS 活动
32-并行活动
64-表访问
128-调试信息
V$STATNAME
各统计项的信息说明
V$STATNAME 视图中 STATISTIC#与 V$MYSTAT,V$SESSTAT 中 STATISTIC#字段是相关联的,NAME 则是对应的英文信息
统计项包括事件发生次数(用户提交数)、数据产生,存取、操作消耗的资源(redo size)、执行操作所花费的时间累积(CPU 占用)等。
V$SESSTAT 和 V$SYSSTAT 区别
- V$SESSTAT 只保存 session 数据,而 V$SYSSTAT 则保存所有 sessions 的累积值。
- V$SESSTAT 只是暂存数据,session 退出后数据即清空。V$SYSSTAT 则是累积的,只有当实例被 shutdown 才会清空。
- V$SESSTAT 不包括统计项名称,如果要获得统计项名称则必须与 V$STATNAME 连接查询获得。