查看oracle资源使用情况,Oracle用户当前操作以及使用资源情况

很多时候数据库在生产过程中,会有大量的会话在运行。那么每个会话所执行的SQL语句,我们也可以通过v$SESSION、v$SQLTEXT、v$SESS_IO结合来分析。当DBA试图确定某一时刻系统中发生着什么时候,相关视图的运用极为重要。

以下给大家讲解一下如何检查Oracle用户当前操作以及使用资源情况。

一  模拟用户操作并观察其使用资源情况

1.1     测试环境:

Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production

Oracle Linux Server release 6.4。

1.2    模拟用户插入数据并通过v$session/v$sqltext结合查看。

当前通过scott用户向t2表插入mytest表的10万条数据:

SQL> insert into t2 select * from mytest;

100000 rows created.

用DBA用户通过以下命令进行查看:

SQL> col username format a5

SQL> col sql_text format a20

SQL> select a.sid, a.username, s.sql_text

2  from v$session a, v$sqltext s

3  where a.sql_address = s.address

4  and a.sql_hash_value = s.hash_value and username is not null

5  order by a.username, a.sid, s.piece;

SID USERN SQL_TEXT

---------- ----- --------------------

49 SCOTT insert into t2 selec

t * from mytest

43 SYS   select a.sid, a.user

name, s.sql_text fro

m v$session a, v$sql

text

43 SYS    s where a.sql_addre

ss = s.address and a

.sql_hash_value = s.

SID USERN SQL_TEXT

---------- ----- --------------------

hash

43 SYS   _value and username

is not null order by

a.username, a.sid,

s.pi

43 SYS   ece

通过该语句:我们可以看到当前SCOTT正在运行的SQL_TEXT语句为:

insert into t2 select * from mytest;

1.3      查看用户使用资源情况:

为了查看每个用户使用资源情况,可以通过以下语句查询,该语句目标是为了强调每个会话中的物理磁盘命中次数和内存命中次数,这就非常容易确认哪些用户正在运行着大量的物理磁盘读和内存读。

SQL> select a.username, b.block_gets, b.consistent_gets,

2  b.physical_reads, b.block_changes, b.consistent_changes

3  from v$session a, v$sess_io b

4  where a.sid = b.sid and username is not null

5  order by a.username;

USERN BLOCK_GETS CONSISTENT_GETS PHYSICAL_READS BLOCK_CHANGES CONSISTENT_CHANGES

----- ---------- --------------- -------------- ------------- ------------------

SCOTT      20144           14483           1064         15845                 19

SYS            0            1229             29             0                  0

SYS            0               3              0             0                  0

1.4      总结

通过查询V$SESSION、V$SQL_TEXT和V$SESS_IO可以发现有问题的用户,并可发现在给定的时间点上他们正在执行着什么操作。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值