CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

数据库 | Oracle | DB2 | SQL Server | MySQL | 商业智能 | BI | DBA | Sybase| SQL Server 2008

您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

用Quick Slice获取Oracle进程的线程状态

作者: 佚名,  出处:IT163, 责任编辑: 王晓晨, 
2008-07-30 07:00
  在Windows环境下,为了得到Oracle进程的每个线程的状态,可以使用Quick Slice,一个基于“图形用户界面”的独立程序。

  与Windows NT系统相比,在Unix环境下对每个Oracle进程监视其CPU使用率是很容易的。在NT系统中,只有一个Oracle进程(即,oracle.exe)。在Windows环境下,为了得到Oracle进程的每个线程的状态,可以使用Quick Slice,一个基于“图形用户界面”的独立程序。它可以从Microsoft网站上免费下载。该软件适用于所有Windows环境下的Oracle 8i和9i。下面是使用它的方法:

  ◆1.首先,你需要找出运行Oracle所对应的所有线程的id号。

SQL> select p.spid "Thread ID", b.name "Background Process", s.username
  "User Name",
  s.osuser "OS User", s.status "STATUS", s.sid "Session ID",
  s.serial# "Serial No.",
  s.program "OS Program"
  from v$process p, v$bgprocess b, v$session s
  where s.paddr = p.addr and b.paddr(+) = p.addr;

  下面是输出结果:

Thread ID Backg User Name OS User STATUS Session ID Serial No.
  OS Program
  ------------ ----- ---------- ---------- -------- ---------- ----------
  20229 PMON Oracle ACTIVE 1 1
  oracle@db02.s0.gc.media.com (PMON)
  20231 DBW0 Oracle ACTIVE 2 1
  oracle@db02.s0.gc.media.com (DBW0)
  20233 LGWR Oracle ACTIVE 3 1
  oracle@db02.s0.gc.media.com (LGWR)
  20235 CKPT Oracle ACTIVE 4 1
  oracle@db02.s0.gc.media.com (CKPT)
  20237 SMON Oracle ACTIVE 5 1
  oracle@db02.s0.gc.media.com (SMON)
  20239 RECO Oracle ACTIVE 6 1
  oracle@db02.s0.gc.media.com (RECO)
  20241 ARC0 Oracle ACTIVE 7 1
  oracle@db02.s0.gc.media.com (ARC0)
  20243 ARC1 Oracle ACTIVE 8 1
  oracle@db02.s0.gc.media.com (ARC1)
  20245 DMON Oracle ACTIVE 9 1
  oracle@db02.s0.gc.media.com (DMON)
  18460 SYS Oracle ACTIVE 17 22737
  sqlplus@db02.s0.gc.media.com (TNS V1-V3)
  15700 Oracle ACTIVE 12 7
  oracle@db02.s0.gc.sj.ipixmedia.com (LNS0)

  在本例中,线程号为20229的线程是PMON,线程号为20231的线程是DBW0,等等。

  ◆2.接下来,在"c:Program FilesResource Kit."目录中双击文件qslice.exe

  ◆3.为了显示进程的每个线程,找到进程-oracle.exe并双击之。

  另外一个图形窗口将弹出并显示所有的线程及其CPU使用情况。

  ◆4.为了识别这些线程,请将线程号(TID)列和前面的SQL语句的线程号列想比较

      为了匹配线程号(TID)和Oracle进程ID,你需要使用科学计算器将线程号(TID)由十六进制转化为十进制。

  红色条代表该线程占用的内核时间;蓝色条代表该线程占用的用户时间。

 

网友评论

笔名 
请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
  • 周排行榜
  • 月排行榜

邮件订阅


    
天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i