第一pga 畸形消费分析

os: aix 6

db:10205

------使用os 命令观察oracle 存消耗情况

#ps gv

......                                                    size

23396516      - A    14907:02 5203 
14324376 2058800    xx 90815 38576  2.0  3.0 oracle

23396516      - A    14907:02 5203 
14324376 2058800    xx 90815 38576  2.0  3.0 oracle

57540768      - A    3711:33 8331  
15108164 15146740    xx 90815 38576  1.9 23.0 oracle

16318890      - A    10639:03  187 
15110924 15009560    xx 90815 38576  2.0 23.0 oracle

33554712      - A    17263:24 13740 9598740 
185552      xx 90815 38576  2.1  0.0 oracle

41877820      - A    10492:10  826 
15110484 15018716    xx 90815 38576  2.0 23.0 oracle

..............

单个进程消耗近15g 明显有问题啊

AIX/LINUX 怎样查看单个进程在os层面的内存消耗        http://blog.csdn.net/lixora/article/details/24060299

这里提供其它查看进程内存慷慨法

----查看相应oracle的应用进程内存消耗情况

select p.username,p.spid,p.program,pm.category,pm.used,pm.allocated,pm.max_allocated

    from v$process p ,v$process_memory pm;

    -----where p.pid=pm.pid and program like '%TNS%';

41877820 :

USERNAME        SPID         PROGRAM                                          CATEGORY              USED  ALLOCATED MAX_ALLOCATED

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

oracle          41877820     oracle@sssdb                                    SQL             1.3077E+10 1.3081E+10    1.3081E+10

oracle          41877820     oracle@sssdb                                    PL/SQL                 224       2008          2008

oracle          41877820     oracle@sssdb                                    Other                      2178876745    2178876745

33554712:

USERNAME        SPID         PROGRAM                                          CATEGORY              USED  ALLOCATED MAX_ALLOCATED

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

oracle          33554712     oracle@sssdb                                    SQL             5380315176 5382747784    5382747784

oracle          33554712     oracle@sssdb                                    PL/SQL               26240      31224         37560

oracle          33554712     oracle@sssdb                                    Other                      4398399145    4398399145

USERNAME        SPID         PROGRAM                                          CATEGORY              USED  ALLOCATED MAX_ALLOCATED

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

oracle          16318890     oracle@sssdb                                    SQL             1.3066E+10 1.3070E+10    1.3070E+10

oracle          16318890     oracle@sssdb                                    PL/SQL                 224       2008          2008

oracle          16318890     oracle@sssdb                                    Other                      2185355529    2185355529

USERNAME        SPID         PROGRAM                                          CATEGORY              USED  ALLOCATED MAX_ALLOCATED

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

oracle          57540768     oracle@sssdb                                    SQL             1.3291E+10 1.3294E+10    1.3294E+10

oracle          57540768     oracle@sssdb                                    PL/SQL                 224       2008          2008

oracle          57540768     oracle@sssdb                                    Other                      2093690553    2093690553

USERNAME        SPID         PROGRAM                                          CATEGORY              USED  ALLOCATED MAX_ALLOCATED

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

oracle          23396516     oracle@sssdb                                    SQL             1.1608E+10 1.1611E+10    1.1611E+10

oracle          23396516     oracle@sssdb                                    PL/SQL                 224       2008          2008

oracle          23396516     oracle@sssdb                                    Other                      2769131497    2769131497

大部分内存花销在sql 上

select program, MODULE, TERMINAL  , MACHINE from v$session where paddr in (select addr from v$process  where spid in(23396516,57540768,33554712,16318890 ,41877820));

----确定对应的应用

SQL> select program, MODULE, TERMINAL  , MACHINE from v$session where paddr in (select addr from v$process where spid in(23396516,57540768,33554712,16318890 ,41877820));

 

PROGRAM        MODULE         TERMINAL             MACHINE

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

xxx.exe        xxx.exe      sfd       DC9A29A

xxx.exe        xxx.exe     sdf72172       WOR722C72172

xxx.exe        xxx.exe      GR5FD       WORKG-4715FD

xxx.exe        xxx.exe      FSK051             WOBG051

xxx.exe        xxx.exe      CD3LVB0U      MSVWCVB0U

---------这里继续跟踪对应应用的session 来确定这个应用中究竟是那些操作造成了如此大的内存开销

1、找出应用的sid和serial#

SQL> select sid,serial# from v$session where lower(program) like '%isap_client%';

SID    SERIAL#

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

        78       1703

2、開始跟踪

SQL> exec sys.DBMS_SYSTEM.set_sql_trace_in_session(78,1703,true);

PL/SQL procedure successfully completed.

3、期间做点关于这个应用的操作(保证和数据库能有交互)

4、停止跟踪,在user_dump_dest文件夹下会生成跟踪的trace文件

SQL> exec sys.DBMS_SYSTEM.set_sql_trace_in_session(78,1703,false);

PL/SQL procedure successfully completed.

5、找出并进入user_dump_dest文件夹,最后生成那个文件就是要用的trace文件

SQL> set lines 1024

SQL> show parameter user_dump_dest

NAME                                 TYPE                             VALUE

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

user_dump_dest                       string                           /opt/oracle/db01/app/oracle/ad

                                                                      min/ORCL/udump

SQL> exit

$ cd /opt/oracle/db01/app/oracle/admin/ORCL/udump

$ ls -otr | tail -1

-rw-r-----   1 oracle    576097 Jan 8 16:15 orcl_ora_24884.trc

$

6、使用tkprof格式化trace文件。sys=no的意思是不查看sys用户的操作,看了也没啥用

$ tkprof orcl_ora_24884.trc report.txt sys=no

TKPROF: Release 9.2.0.4.0 - Production on Tue Jan 8 16:19:35 2008

Copyright (c) 1982, 2002, Oracle Corporation. All rights reserved.

$

7、查看格式化后的文件report.txt。里头就有跟踪期间发生的全部存储过程(存储过程中运行的sql操作也会逐条显示)和sql操作,还有各sql运行的统计数据,能够了解哪些sql快,哪些慢了

$ more report.txt




版权声明:本文博客原创文章,博客,未经同意,不得转载。

第一pga 畸形消费分析的更多相关文章

  1. ansible代码分析第一篇--主文件—ansible分析

    2016年2月23日,学习,分析ansible代码 ansible是一种运维中使用的批量部署的工具,它本身是一种框架,具体的部署和架构分析,下面这篇文章讲的不错. http://os.51cto.co ...

  2. 精通Web Analytics 2.0 (3) 第一章:网站分析的新奇世界

    精通Web Analytics 2.0 : 用户中心科学与在线统计艺术 第一章:Web Analytics 2.0的新奇世界 多年以来,我们很清楚的知道,网站分析能够真正的改革网络上业务的完成方式.那 ...

  3. Postmortem Report 第一轮迭代事后分析报告

    一.设想和目标 1.1 我们的软件要解决什么问题?是否定义得很清楚?是否对典型用户和典型场景有清晰的描述? 我们的软件<BlueZ>是一款全新动作类塔防游戏.与市面上已经存在的塔防游戏不同 ...

  4. 【我的第一个现实漏洞分析】 CVE-2017-17215 华为智能路由器HG532 漏洞分析笔记

    0x00 基本信息 2017.11.27 Check Point团队报告华为 HG532 产品的远程命令执行漏洞(CVE-2017-17215),Mirai的升级版变种中已经使用该漏洞. 华为HG53 ...

  5. Unity Shaders 第一个默认程序分析

    Unity Shaders 第一个默认程序 Shader "Custom/Shader" { Properties { _MainTex ("Base (RGB)&quo ...

  6. 实现手机扫描二维码页面登录,类似web微信-第一篇,业务分析

    转自:http://www.cnblogs.com/fengyun99/p/3541249.html 关于XMPP组件的文章,先休息两天,好歹已经完整的写了一份. 这两天,先实现一套关于web微信扫描 ...

  7. uboot第一阶段关键位置分析

    /* * the actual reset code */ reset: /* * set the cpu to SVC32 mode */ mrs r0,cpsr bic r0,r0,#0x1f o ...

  8. 震撼!全网第一张源码分析全景图揭秘Nginx

    不管是C/C++技术栈,还是PHP,Java技术栈,从事后端开发的朋友对nginx一定不会陌生. 想要深入学习nginx,阅读源码一定是非常重要的一环,但nginx源码量毕竟还是不算少,一不小心就容易 ...

  9. linux系统性能调优第一步——性能分析(vmstat)

    linux系统性能调优第一步--性能分析(vmstat) 分类: LINUX 性能调优的第一步是性能分析,下面从性能分析着手进行一些介绍,尤其对linux性能分析工具vmstat的用法和实践进行详细介 ...

随机推荐

  1. wamp5中的apache不能启动,80端口被占用

    在wamp中apache中的httpd.conf文件中 端口文件设置为8080 #Listen 12.34.56.78:8080Listen 8080

  2. 安装pygame

    pygame的安装 我们首先要去到:http://www.pygame.org/download.shtml 下载我们所需要的软件包: 我选择的是:pygame-1.9.2a0.win32-py3.2 ...

  3. hdu 5035 概率论

    n服务形式,各服务窗口等候时间指数公布,求所需的等待时间. 解: 相两点:首先,等到轮到他,然后就是送达时间. 潜伏期期望每个表单1/ki(1/ki,宣布预期指数公式).总的等待时间预期1/(求和ki ...

  4. Linux命令之文本处理(二)

    cut命令 cut命令用来操作文件的列,能够视为列编辑器:与之相应是大多数的行"编辑器".如sed.grep.sort等,它们操作文本时,以行为单位. cut的主要功能就是输出文本 ...

  5. 【剑指offer】q50:树节点最近的祖先

    #@ root: the root of searched tree #@ nodeToFind: the tree-node to be found #@ path: the path from r ...

  6. 第4周 页面限制8060 bytes

    原文:第4周 页面限制8060 bytes 恭喜您!在你面前就只剩下几页了,然后你就可以完成第1个月的SQL Server性能调优培训了.今天我将讲下页的一些限制,还有为什么你会喜欢这些限制,同时也会 ...

  7. Codeforces554D:Kyoya and Permutation

    Let's define the permutation of length n as an array p = [p1, p2, ..., pn] consisting of n distinct ...

  8. C++ Primer 学习笔记_53_类和数据抽象 --友元、static员

    分类 --友元.static成员 一.友元 友元机制同意一个类将对其.友元关系:一个样例 如果一个窗体管理类Window_Mgr可能须要訪问由其管理的Screen对象的内部数据.Screen应该同意其 ...

  9. C#Process执行批处理后如何获取返回值?

    代码如下   p.StartInfo = new System.Diagnostics.ProcessStartInfo(path, pwd); p.Start();其中path是个BAT的路径!我想 ...

  10. 【Jqurey EasyUI+Asp.net】---DataGrid增加、删、更改、搜

    在前面写了两,但不知道如何完成,对比刚刚开始学这个,他们摸着石头过河,一步步.在最后两天DataGridCRUD融合在一起.因此份额.我希望像我这样谁是刚刚开始学习一些帮助. 直接主题酒吧. 它是说数 ...