温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

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

发布时间:2021-11-12 14:25:17 来源:亿速云 阅读:146 作者:柒染 栏目:关系型数据库

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的区别是什么的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI