Heim > Datenbank > MySQL-Tutorial > 通过内存占用情况,找出oracle的session所对应的program

通过内存占用情况,找出oracle的session所对应的program

WBOY
Freigeben: 2016-06-07 16:35:31
Original
1192 Leute haben es durchsucht

? ? ?通常情况下,感觉oracle数据库比较慢了,会首先查找AIX操作系统所占内存、CPU最大的process,然后由该process的ID找出对应的oracle session、program,从而进行优化。 ? ? ?先做如下交代: ? ?? ?AIX操作系统操作: 内存排序: ? ? ?ps -ealf|head -1;p

? ? ?通常情况下,感觉oracle数据库比较慢了,会首先查找AIX操作系统所占内存、CPU最大的process,然后由该process的ID找出对应的oracle session、program,从而进行优化。

? ? ?先做如下交代:


? ?? ?AIX操作系统操作:

  1. 内存排序: ? ? ?ps -ealf|head -1;ps -ealf|sort -rn +9|head -50
  2. CPU排序: ? ? ??ps aux|head -1;ps aux|sort -rn +2|head -20
  3. 查找最大资源:ps aux|sort -rn +2|head -20
? ? ? Oracle两个动态视图:
  1. gv$process:这里的process是操作系统层面的,也是调试oracle数据库的入口;
  2. gv$session:这里才进入到oracle会话,查看所对应的program等等。
? ? ? ? ? 注:v&前面的g表示集群。若有多个实例,则用gv$视图查看更加方便,比如哪个程序跑在哪个实例上。

?? ? ?操作步骤:


? ?? ? ??首先查找所占资源最大的PID所对应的Process的address号:select addr from gv$process where spid in (6423194)

? ? ?? ? ??select?addr?from?gv$process?where?spid?in?(1880090?)

? ??? ? ?然后查找该进程所对应的session,可以查看到对应的username、machine、program等等。

? ??? ? ?? select?*?from?gv$session??where?paddr?in?(select?addr?from?gv$process?where?spid?in?(?1880090))




作者:yichangzyh 发表于2013-7-15 20:19:35 原文链接

阅读:83 评论:0 查看评论

通过内存占用情况,找出oracle的session所对应的program

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage