怎样利用ash监控会话
ash是很有效的监控工具之中的一个。1秒抓一次
select max(sample_time)over(),min(sample_time)over() from dba_hist_active_sess_history; --8天
select max(sample_time)over(),min(sample_time)over() from v$active_session_history; --当天 首先先了解几个视图:
V$ACTIVE_SESSION_HISTORY: 是ASH的核心。用以记录活动SESSION的历史等待信息。每秒採样一次。这部分内容记录在内存中,期望值是记录一个小时的内容。
WRH#_ACTIVE_SESSION_HISTORY : 是V$ACTIVE_SESSION_HISTORY在AWR的存储地。
V$ACTIVE_SESSION_HISTORY: 中的信息会被定期(每小时一次)的刷新到负载库中,并缺省保留一个星期用于分析。
DBA_HIST_ACTIVE_SESS_HISTORY: 视图是WRH#_ACTIVE_SESSION_HISTORY视图和其它几个视图的联合展现,通常通过这个视图进行历史数据的訪问。 ------------------------------------
--V$ACTIVE_SESSION_HISTORY的监控:--
------------------------------------ ------------session:1----------------- SQL> @big SID
----------
131 Elapsed: 00:00:00.00
drop table big
*
ERROR at line 1:
ORA-00942: table or view does not exist Elapsed: 00:00:00.03
Elapsed: 00:00:00.31
Elapsed: 00:00:00.34
Elapsed: 00:00:00.29
Elapsed: 00:00:00.73
Elapsed: 00:00:01.75
Elapsed: 00:00:10.59
Elapsed: 00:00:24.62
Elapsed: 00:00:00.01 BIG_M
----------
522
Elapsed: 00:00:00.36 COUNT(*)
----------
4650368
Elapsed: 00:00:26.70 ------------session:2----------------- SQL> @getash_sid
Enter value for sid: 131 SESSION_ID NAME P_NAME P_VALUE SQL_ID WAIT_TIME CURRENT_OBJ# CURRENT_FILE# CURRENT_BLOCK#
---------- ---------------------------------------------------------------- --------------- --------------- ------------- ---------- ------------ ------------- ---------
131 db file sequential read file# 1 d2wbn28rdk8z4 0 547 1 3604
block# 53206
blocks 1 131 db file sequential read file# 1 d2wbn28rdk8z4 0 -1 0 0
block# 3009
blocks 1 131 db file scattered read file# 4 03b71c07nsc1a 0 134 1 1064
block# 4845
blocks 8 131 log buffer space 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch completion 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 6046
0
0 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 4995
block# 4995
blocks 5 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 7170
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 7170
0
0 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 8578
block# 8578
blocks 126 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 12802
block# 12802
blocks 126 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 12930
0
0 131 db file sequential read file# 1 aq32z6wjx1s4h 0 65921 201 3585
block# 2854
blocks 1 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 14084
block# 14084
blocks 124 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 18436
block# 18436
blocks 128 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 19972
block# 19972
blocks 128 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 21252
block# 21252
blocks 124 131 db file parallel read files 1 aq32z6wjx1s4h 0 76851 4 23424
blocks 29
requests 29 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 24320
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 24320
0
0 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 25856
block# 25856
blocks 128 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 27652
block# 27652
blocks 124 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 29312
block# 29312
blocks 32 131 Disk file operations I/O FileOperation 2 aq32z6wjx1s4h 0 76851 4 29952
fileno 0
filetype 2 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 30724
block# 30724
blocks 124 131 db file scattered read file# 4 aq32z6wjx1s4h 0 76851 4 34530
block# 34530
blocks 14 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 35716
0
0 131 log file switch (checkpoint incomplete) 0 aq32z6wjx1s4h 0 76851 4 35716
0
0 131 Disk file operations I/O FileOperation 5 aq32z6wjx1s4h 0 76851 4 37632
fileno 0
filetype 2 131 db file sequential read file# 4 fqcxb1n33642x 0 9 1 86832
block# 4999
blocks 1 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 10344
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 17409
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 22083
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 28549
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 34733
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 39217
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 45114
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 48836
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 9 1 86832
block# 52391
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 5196
block# 5196
blocks 6 131 db file sequential read file# 4 fqcxb1n33642x 0 76851 4 8261
block# 8261
blocks 1 131 db file sequential read file# 4 fqcxb1n33642x 0 76851 4 11318
block# 11318
blocks 1 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 14489
block# 14489
blocks 56 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 17935
block# 17935
blocks 50 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 21195
block# 21195
blocks 20 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 25170
block# 25170
blocks 2 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 28453
block# 28453
blocks 34 131 db file sequential read file# 4 fqcxb1n33642x 0 76851 4 33067
block# 33067
blocks 1 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 36991
block# 36991
blocks 13 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 41616
block# 41616
blocks 21 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 44055
block# 44055
blocks 8 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 2723
block# 2723
blocks 44 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 50056
block# 50056
blocks 9 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 53658
block# 53658
blocks 102 131 db file scattered read file# 4 fqcxb1n33642x 0 76851 4 56580
block# 56580
blocks 128 131 db file sequential read file# 4 fqcxb1n33642x 0 76851 4 60256
block# 60256
blocks 1 64 rows selected. Elapsed: 00:00:00.40
SQL> @getsql_sqlid
Enter 1 for curr sql, 2 for hist sql,default 1: Enter value for sqlid: fqcxb1n33642x SQL_FULLTEXT
---------------------------------------------------------------------------------------------
select count(*) from big
Elapsed: 00:00:00.00
Elapsed: 00:00:00.00
SQL> @getobj_id
Enter value for dblink:
Enter value for obj_id: 76851 OWNER OBJECT_NAME OBJECT_TYPE CREATED STATUS
-------------------- ------------------------------ ------------------- ------------------- -------
SCOTT BIG TABLE 2014-11-20 15:56:23 VALID 1 row selected. Elapsed: 00:00:00.01
SQL> @getobj_fb
Enter value for file_id: 4
Enter value for block_id: 60256 OWNER SEGMENT_NAME SEGMENT_TY
--------------- -------------------- ----------
SCOTT BIG TABLE 1 row selected. Elapsed: 00:00:00.37 --------------------------@脚本-------------------- --@big @sid
set feedback off
drop table big;
create table big as select * from dba_objects;
insert into big select * from big;
/
/
/
/
/
commit;
select SUM(bytes) / 1024 / 1024 big_M from dba_segments where segment_name = 'BIG';
select count(*) from big;
set feedback on --@getash_sid
col p_name for a15
col p_value for a15
select SESSION_ID,
NAME,
P1TEXT||chr(10)||P2TEXT||chr(10)||P3TEXT p_name,
p1||chr(10)||p2||chr(10)||p3 p_value,
sql_id,
WAIT_TIME,
CURRENT_OBJ#,
CURRENT_FILE#,
CURRENT_BLOCK#
from v$active_session_history ash, v$event_name enm
where ash.event# = enm.event#
and SESSION_ID = &sid
order by sample_time; ----------------------------------------
--DBA_HIST_ACTIVE_SESS_HISTORY的监控:--
---------------------------------------- --查当前时间
select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; --依据时间找到snap_id(8天内,1小时前),由于基表很大,利用snap_id的索引才干高速查询
select distinct snap_id from dba_hist_snapshot b where to_date('2014-11-20 14:08:12','yyyy-mm-dd hh24:mi:ss') between b.begin_interval_time and b.end_interval_time; --top instance
select /*+parallel(a,8)*/instance_number,count(*) from dba_hist_active_sess_history a where a.snap_id=67421 group by instance_number; --top event
select /*+parallel(a,8)*/event,count(*) from dba_hist_active_sess_history a
where a.snap_id=67421
and instance_number=2
and sample_time>=to_timestamp('2014-11-20 14:07:12','yyyy-mm-dd hh24:mi:ss')
and sample_time<=to_timestamp('2014-11-20 14:08:12','yyyy-mm-dd hh24:mi:ss')
group by event
order by count(*) desc; --top user
select /*+parallel(a,8)*/user_id,(select username from dba_users b where b.user_id=a.user_id) username,count(*) from dba_hist_active_sess_history a
where a.snap_id=67421
and instance_number=2
and sample_time>=to_timestamp('2014-11-20 14:07:12','yyyy-mm-dd hh24:mi:ss')
and sample_time<=to_timestamp('2014-11-20 14:08:12','yyyy-mm-dd hh24:mi:ss')
group by user_id
order by count(*) desc; --top sql
select /*+parallel(a,8)*/sql_id,count(*) from dba_hist_active_sess_history a
where a.snap_id=67421
and instance_number=2
and sample_time>=to_timestamp('2014-11-20 14:07:12','yyyy-mm-dd hh24:mi:ss')
and sample_time<=to_timestamp('2014-11-20 14:08:12','yyyy-mm-dd hh24:mi:ss')
group by sql_id
order by count(*) desc; -- select SQL_TEXT from dba_hist_sqltext where sql_id='49p4hfj6azw19'; --top program
select /*+parallel(a,8)*/program,count(*) from dba_hist_active_sess_history a
where a.snap_id=67421
and instance_number=2
and sample_time>=to_timestamp('2014-11-20 14:07:12','yyyy-mm-dd hh24:mi:ss')
and sample_time<=to_timestamp('2014-11-20 14:08:12','yyyy-mm-dd hh24:mi:ss')
group by program
order by count(*) desc;
怎样利用ash监控会话的更多相关文章
- angular访问后台服务及监控会话超时的封装
angular访问后台服务及监控会话超时的封装 angular本身自带访问组件http和httpclient,组件本身都是异步模式访问.本文只列举了对http组件的封装同时也一同处理会话超时监控. 获 ...
- Zabbix使用netstat监控会话
原文链接 TCP的连接状态对于我们web服务器来说是至关重要的,尤其是并发量ESTAB:或者是syn_recv值,假如这个值比较大的话我们可以认为是不是受到了攻击,或是是time_wait值比较高的话 ...
- 利用shell监控cpu、磁盘、内存使用率
利用shell监控cpu.磁盘.内存使用率,达到警报阈值发邮件进行通知 并配合任务计划,即可及时获取报警信息 #!/bin/bash ################################# ...
- 利用superlance监控supervisor运行状态
此文已由作者张家裕授权网易云社区发布. 欢迎访问网易云社区,了解更多网易技术产品运营经验. 最近开发问到supervisor管理下的进程重启了,有无办法做到主动通知,楼主最先想到的是superviso ...
- linux下利用JMX监控Tomcat
利用JMX监控Tomcat,就是相当于部署在tomcat上的应用作为服务端,也就是被管理资源的对象.然后通过程序或者jconsole远程连接到该应用上来.远程连接需要服务器端提供ip和port.如果需 ...
- 利用PowerShell监控Win-Server性能
Q:如何系统层面的去监控一下Windows Server? A:额……一时间的话……能想到的可能也就是PowerShell+SQL Server+job,试试. 1.关于PowerShell 2.Po ...
- C# 利用性能计数器监控网络状态
本例是利用C#中的性能计数器(PerformanceCounter)监控网络的状态.并能够直观的展现出来 涉及到的知识点: PerformanceCounter,表示 Windows NT 性能计数器 ...
- 利用pt-deadlock-logger监控死锁
Percona提供的percona-toolkit提供很多实用功能,这里着重介绍如何监控死锁. pt-deadlock-logger基本用法 Usage: pt-deadlock-logger [OP ...
- linux下利用curl监控网页shell脚本
#!/bin/bash smail() {mail -s "$1" gjw_apparitor@gmail.com <<EOF$1$2====report time: ...
随机推荐
- 一:1.1 python程序与数据储存【进制转换】
二进制 :0 1 [逢二进一]0+0=00+1=11+1=1011+1=100 1 1+ 1------ 100 八进制: 0 1 2 3 4 5 6 7 [逢八进一] 1+7=101+2=3 十进制 ...
- 20180929 北京大学 人工智能实践:Tensorflow笔记08
https://www.bilibili.com/video/av22530538/?p=28 ———————————————————————————————————————————————————— ...
- 20180929 北京大学 人工智能实践:Tensorflow笔记03
更改的程序部分如下: 另: 难?????????????见链接: https://www.bilibili.com/video/av22530538/?p=17 + (完)
- 用例子看ASP.NET Core Identity是什么?
原文:用例子看ASP.NET Core Identity是什么? 目录 前言 基于声明的认证(Claims-based Authentication) Claim 在ASP.NET Core Iden ...
- 全面解读Java中的枚举类型enum的使用
这篇文章主要介绍了Java中的枚举类型enum的使用,开始之前先讲解了枚举的用处,然后还举了枚举在操作数据库时的实例,需要的朋友可以参考下 关于枚举 大多数地方写的枚举都是给一个枚举然后例子就开始sw ...
- C#日期控件datetimepicker保存空值方法
方法一(推荐): 设置datetimepicker的属性ShowCheckBox为true 在窗口初始化时候,添加代码this.datetimepicker1.Checked = false; 保存日 ...
- 协变 & 逆变
都跟里氏替换原则有关. 协变:你可以用一个子类对象去替换相应的一个父类对象,这是完全符合里氏替换原则的,和协(谐)的变.如:用Swan替换Bird. 逆变:你可以用一个父类对象去替换相应的一个子类对象 ...
- HDU4565 So Easy! 矩阵高速幂外加数学
easy 个屁啊,一点都不easy,题目就是要求公式的值,但是要求公式在最后的取模前的值向上取整.再取模,无脑的先试了高速幂 double fmod来做,结果发现是有问题的.这题要做肯定得凑整数,凑 ...
- javascript 提交弹窗
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- POJ 3257 DP
题意: 思路: 用vector存上本出发点能到的地方&成本&有趣指数(用结构体保存) 然后DP就好了 f[i][j]表示到了i 成本为j的有趣指数最大是多少 f[vec[i][k].e ...