v$mystat、v$sesstat和v$sysstat的区别是什么

36次阅读
没有评论

共计 1629 个字符,预计需要花费 5 分钟才能阅读完成。

v$mystat、v$sesstat 和 v$sysstat 的区别是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。

v$mystat v$sesstat v$sysstat 的区别

v$mystat——- mystat———- my session stat  当前会话统计
v$sesstat—— sesstat———– sessionstat  按会话进行分组统计
v$sysstat——- sysstat———– systemstat  当系统的整体统计
v$statname

v$mystat 是指自己 session 的 stat
v$sesstat 是子系统所有 session 的 stat

为了学习如何得 sql 产生的 redo 信息,在网上查询到结果得出需对 v$mystat,v$sesstat,v$statname 视图进行操作,:

1.v$mystat,v$sesstat 是用来分别统计会话级别和自实例起动以来数据库各种统计信息的。
两个视图结构一致,只是统计数据不一致。
desc v$mystat
名称   是否为空? 类型
—————————————————– ——– ————————————
SID  NUMBER
STATISTIC#  NUMBER
VALUE  NUMBER

SID 表示会话编号,与 v$session 中 SID 相对应。
STATISTIC#  表示统计项
VALUE  表示统计项相关的值

v$mystat 视图中只会有当前用户的会话信息,v$sesstat 会有整个实例内所有会话信息。因此在 v$sesstat 中自然包括 v mystat 的统计信息。

SQL desc v$sysstat
 Name  Null?  Type
 —————————————– ——– —————————-
 STATISTIC#  NUMBER
 NAME  VARCHAR2(64)
 CLASS  NUMBER
 VALUE  NUMBER
 STAT_ID  NUMBER

2. 一般情况下 v$mystat,v$sesstat 会与 v$statname 一起配合使用。
undefinedSQL desc v$statname
 Name  Null?  Type
 —————————————– ——– —————————-
 STATISTIC#  NUMBER
 NAME  VARCHAR2(64)
 CLASS  NUMBER
 STAT_ID  NUMBER

v$statname 视图中 STATISTIC#与 v$mystat,v$sesstat 中 STATISTIC# 字段是相关联的。而 NAME 则是对应的英文信息,比如说要查某条 DML 语句所产生的 redo 信息。可以这样写:

select t.sid, t.value/1024/1024 size_m
  from v$sesstat t, v$statname n
 where t.STATISTIC# = n.STATISTIC#
  and name = redo size
 order by 2;
 
select value
  from v$mystat t, v$statname t1
 where t.STATISTIC# = t1.STATISTIC#
  and t1.NAME = redo size

其它信息也是如此,只需将 t1.name 换成相对应的英文名称即可。

看完上述内容,你们掌握 v$mystat、v$sesstat 和 v$sysstat 的区别是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注丸趣 TV 行业资讯频道,感谢各位的阅读!

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-20发表,共计1629字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)