【DB笔试面试823】在Oracle中,如何查看过去某一段时间数据库系统的会话是否有问题?

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

         题目         部分

【DB笔试面试823】在Oracle中,如何查看过去某一段时间数据库系统的会话是否有问题?程序员


     




         答案部分          


能够经过DBA_HIST_ACTIVE_SESS_HISTORY视图来进行查询,首先查询指定时间段的等待事件,下例中的SQL语句查询的是2016510号下午1730分到1930分这段时间内数据库的等待事件和SQL的执行状况,其中,COUNTS列的值比较大的就是SQL执行时间较长的,须要特别关注:面试

1SELECT D.EVENT, D.SQL_ID, COUNT(1) COUNTS
2  FROM DBA_HIST_ACTIVE_SESS_HISTORY D
3  WHERE D.SAMPLE_TIME >= TO_DATE('2016-05-10 17:30:00''YYYY-MM-DD HH24:MI:SS')
4  AND    D.SAMPLE_TIME <= TO_DATE('2016-05-10 19:30:00''YYYY-MM-DD HH24:MI:SS')
5 GROUP  BY D.EVENT,D.SQL_ID;
     


下面的SQL语句能够查询到具体SQL的扫描操做,初步预估SQL问题:数据库

 1SELECT TO_CHAR(D.SAMPLE_TIME, 'YYYY-MM-DD HH24:MI:SS') SAMPLE_TIME,
2       D.SQL_ID,
3       D.SQL_PLAN_HASH_VALUE,
4       D.SQL_PLAN_OPERATION,
5       D.SQL_PLAN_OPTIONS,
6       D.EVENT 
7  FROM DBA_HIST_ACTIVE_SESS_HISTORY D
8 WHERE D.SAMPLE_TIME >= TO_DATE('2016-05-10 17:30:00''YYYY-MM-DD HH24:MI:SS')
9   AND D.SAMPLE_TIME <= TO_DATE('2016-05-10 19:30:00''YYYY-MM-DD HH24:MI:SS')
10 ORDER BY D.SNAP_ID;
     


根据以上的SQL语句能够知道,对表作的是不是全表扫描,以及当时会话的等待事件是什么,而后就能够根据等待事件进行SQL分析了。微信

以下的SQL语句能够查询某一段时间内,会话所持有的锁信息:网络

 1SELECT D.SQL_ID,
2        CHR(BITAND(P1, -16777216) / 16777215) ||CHR(BITAND(P1, 16711680) / 65535"Lock",
3        BITAND(P1, 65535"Mode",
4        COUNT(1) COUNTS,
5        COUNT(DISTINCT D.SESSION_ID) COUNTS1
6   FROM DBA_HIST_ACTIVE_SESS_HISTORY D
7  WHERE D.SAMPLE_TIME >= TO_DATE('2016-05-10 17:30:00''YYYY-MM-DD HH24:MI:SS')
8    AND D.SAMPLE_TIME <= TO_DATE('2016-05-10 19:30:00''YYYY-MM-DD HH24:MI:SS')
9    AND D.EVENT = 'enq: TX - row lock contention'
10  GROUP BY D.SQL_ID,
11           (CHR(BITAND(P1, -16777216) / 16777215) ||
12           CHR(BITAND(P1, 16711680) / 65535)),
13           (BITAND(P1, 65535));
     


以下的SQL语句能够查询系统问题时间段内的会话详情:app

 1SELECT D.CURRENT_OBJ#,
2       D.CURRENT_FILE#,
3       D.CURRENT_BLOCK#,
4       D.CURRENT_ROW#,
5       D.EVENT,
6       D.P1TEXT,
7       D.P1,
8       D.P2TEXT,
9       D.P2,
10       CHR(BITAND(P1, -16777216) / 16777215) ||CHR(BITAND(P1, 16711680) / 65535"Lock",
11       BITAND(P1, 65535"Mode",
12       D.BLOCKING_SESSION,
13       D.BLOCKING_SESSION_STATUS,
14       D.BLOCKING_SESSION_SERIAL#,
15       D.SQL_ID,
16       TO_CHAR(D.SAMPLE_TIME, 'YYYYMMDDHH24MISS') SAMPLE_TIME
17  FROM DBA_HIST_ACTIVE_SESS_HISTORY D
18 WHERE D.SAMPLE_TIME >= TO_DATE('2016-05-10 17:30:00''YYYY-MM-DD HH24:MI:SS')
19   AND D.SAMPLE_TIME <= TO_DATE('2016-05-10 19:30:00''YYYY-MM-DD HH24:MI:SS')
20   AND D.EVENT = 'enq: TX - row lock contention';
     


& 说明:ide

有关一些具体的分析过程能够参考个人BLOG案例:http://blog.itpub.net/26736162/viewspace-2123996/学习



本文选自《Oracle程序员面试笔试宝典》,做者:小麦苗
spa


watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

==================================================================================================================【干货来了|小麦苗IT资料分享】★小麦苗DB职场干货:https://mp.weixin.qq.com/s/Vm5PqNcDcITkOr9cQg6T7w★小麦苗数据库健康检查:https://share.weiyun.com/5lb2U2M★小麦苗微店:https://weidian.com/?userid=793741433★各类操做系统下的数据库安装文件(Linux、Windows、AIX等):https://pan.baidu.com/s/1hqff3Evv6oj2-Tn87MpFkQ★小麦苗分享的资料:https://share.weiyun.com/57HUxNi★小麦苗课堂资料:https://share.weiyun.com/5fAdN5m★小麦苗课堂试听资料:https://share.weiyun.com/5HnQEuL★小麦苗出版的相关书籍:https://share.weiyun.com/5sQBQpY★小麦苗博客文章:https://share.weiyun.com/5ufi4Dx★数据库系列(Oracle、MySQL、NoSQL):https://share.weiyun.com/5n1u8gv★公开课录像文件:https://share.weiyun.com/5yd7ukG★其它经常使用软件分享:https://share.weiyun.com/53BlaHX★其它IT资料(OS、网络、存储等):https://share.weiyun.com/5Mn6ESi★Python资料:https://share.weiyun.com/5iuQ2Fn★已安装配置好的虚拟机:https://share.weiyun.com/5E8pxvT★小麦苗腾讯课堂:https://lhr.ke.qq.com/★小麦苗博客:http://blog.itpub.net/26736162/★OCP培训:https://mp.weixin.qq.com/s/2cymJ4xiBPtTaHu16HkiuA★12c的OCP培训:https://mp.weixin.qq.com/s/hMLHlyjMHhLmA0xN4hLvfw★OCM培训:https://mp.weixin.qq.com/s/7-R6Cz8RcJKduVv6YlAxJA★高可用(RAC+DG+OGG)培训:https://mp.weixin.qq.com/s/4vf042CnOdAD8zDyjUueiw★小麦苗课堂腾讯视频:http://v.qq.com/vplus/71f69a319a24c6808cd6e6189ae90664
==================================================================================================================
 

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

 本文做者:小麦苗,只专一于数据库的技术,更注重技术的运用操作系统

● 做者博客地址:http://blog.itpub.net/26736162/abstract/1/

 本系列题目来源于做者的学习笔记,部分整理自网络,如有侵权或不当之处还请谅解

 版权全部,欢迎分享本文,转载请保留出处

 QQ:646634621  QQ群:23016159九、618766405

 微信:lhrbestxh

 微信公众号:DB宝

 提供Oracle OCP、OCM、高可用(rac+dg+ogg)和MySQL最实用的技能培训

● 题目解答如有不当之处,还望各位朋友批评指正,共同进步

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

长按下图识别二维码或微信扫描下图二维码来关注小麦苗的微信公众号:DB宝,学习最实用的数据库技术。

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=

watermark,size_16,text_QDUxQ1RP5Y2a5a6i,color_FFFFFF,t_100,g_se,x_10,y_10,shadow_90,type_ZmFuZ3poZW5naGVpdGk=


本文分享自微信公众号 - DB宝(lhrdba)。
若有侵权,请联系 support@oschina.cn 删除。
本文参与“OSC源创计划”,欢迎正在阅读的你也加入,一块儿分享。

相关文章
相关标签/搜索