当前位置: 首页 > 图文教程 > 数据库 > Oracle > 用Quick Slice获取Oracle进程的线程状态

Oracle
oracle sys_connect_by_path 函数 结果集连接
oracle join on 数据过滤问题
Oracle 当前用户下所有表的记录总数
oracle 树查询 语句
oracle 触发器 实现出入库
Oracle 函数大全
oracle 删除重复数据
ORACLE 最大连接数的问题
oracle 层次化查询(行政区划三级级联)
oracle 查询表名以及表的列名
Oracle 数据显示 横表转纵表
oracle 服务启动,关闭脚本(windows系统下)
ORCLE 表中列的修改
oracle 数据库连接分析
Oracle 实现类似SQL Server中自增字段的一个办法
Oracle 常用的SQL语句
Oracle 数组的学习 小知识也要积累,养成好的学习态度
Oracle 日期的一些简单使用
Oracle 数据库连接查询SQL语句
Oracle DBA常用语句

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


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 162 ::
收藏到网摘: n/a

与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

[email protected] (PMON)

20231 DBW0 Oracle ACTIVE 2 1

[email protected] (DBW0)

20233 LGWR Oracle ACTIVE 3 1

[email protected] (LGWR)

20235 CKPT Oracle ACTIVE 4 1

[email protected] (CKPT)

20237 SMON Oracle ACTIVE 5 1

[email protected] (SMON)

20239 RECO Oracle ACTIVE 6 1

[email protected] (RECO)

20241 ARC0 Oracle ACTIVE 7 1

[email protected] (ARC0)

20243 ARC1 Oracle ACTIVE 8 1

[email protected] (ARC1)

20245 DMON Oracle ACTIVE 9 1

[email protected] (DMON)

18460 SYS Oracle ACTIVE 17 22737

[email protected] (TNS V1-V3)

15700 Oracle ACTIVE 12 7

[email protected] (LNS0)

 

 

 

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

 

 

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

 

 

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

 

 

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

 

 

◆4.为了识别这些线程,请将线程号(TID)列和前面的SQL语句的线程号列想比较。为了匹配线程号(TID)和Oracle进程ID,你需要使用科学计算器将线程号(TID)由十六进制转化为十进制。