网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
本月文章推荐
.Oracle-如何获得数据库的DBID.
.EXP错误(无效的列名).
.Bitmap Index 的一点探究.
.Oracle10g + Solaris9 for x86 +.
.关于Oracle 9i数据库密码重用规则.
.如何在Windows 2000下手工将Orac.
.ORACLE SQL性能优化系列(五).
.Developer/2000 R2.1 中文版 在 .
.Oracle10g 数据的导入导出 给数据.
.[Oracle]利用开源工具实现自己的.
.NBU备份ORACLE时Code 29错误的解.
.Oracle数据库的安全策略.
.PB内置Oracle数据库接口的使用方.
.ORACLE入门之OLTP和DSS不同数据库.
.怎样利用组来保证Oracle安全.
.双机容错环境下Oracle数据库的具.
.我的oracle笔记二(pl/sql 编程方.
.ORACLE常用傻瓜问题1000问(之六).
.我在RH9下安装Oracle8.1.7经历.
.oracle9.2.0.1升级到9.2.0.6.

使用Windows工具管理Nt上的Oracle数据库

发表日期:2008-2-9



  
link:


http://www.eygle.com/faq/Use.Nt.tools.manage.Oracle.htm


1.TOP

Top 工具可以监视最消耗系统资源的进程

Pid 即process id,Windows是多线程服务器,每个进程包含一系列线程,这个与UNIX不同,Unix每个Oralce进程独立存在,在Nt上所有线程由Oralce进程衍生。

所以只用TOP工具我们还无法找出每个连接的用户进程。





 

71% 00000000?1?16384?0?8:52:53.936 No Name Found0% 00000008?4116?282624?24576?0:00:45.164 System1% 000000B8?27023?991232 2207744?0:03:10.313 CSRSS.EXE0% 00000524?1844 2035712 3137536?0:00:11.726 rundll32.exe0% 0000032C?1002 1765376 1380352?0:00:08.432 AOM.exe0% 000004E8?773695 7610368 8146944?0:04:26.533 XDICT.EXE0% 00000720?583880 5079040 33280000?0:08:29.122 NetCaptor.exe23% 000006F4?11882 37056512 79757312?0:00:07.661 oracle.exe0% 00000420?1622 1478656 2420736?0:00:00.170 SQLPLUS.EXE

假如windows上由于某个进程的sql或其他问题导致资源过度占用或消耗,比如如下这样一条语句,那么我们怎样来找到这条问题sql呢?



2.QSLICE

找到最消耗资源的线程号,本例中为(6ec),为16进制,需要转换,v$process视图中的进程ID为十进制



使用getsql.sql脚本即可获得当前正在执行的SQL语句:

 

REM getsql.sqlREM author eygleREM 在windows上,已知进程ID,得到当前正在执行的语句REM 在windows上,进程ID为16进制,需要转换,在UNIX直接为10进制SELECT /*+ ORDERED */ sql_text FROM v$sqltext a WHERE (a.hash_value, a.address) IN ( SELECT DECODE (sql_hash_value, 0, prev_hash_value, sql_hash_value ), DECODE (sql_hash_value, 0, prev_sql_addr, sql_address) FROM v$session b WHERE b.paddr = (SELECT addr FROM v$process c WHERE c.spid = TO_NUMBER ('&pid', 'xxxx')))ORDER BY piece ASC/

运行以上脚本:



 

ok,找到这最消耗资源的问题SQL接下来就可以进行针对性调整了.

相关工具下载地址:

http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/qslice-o.ASP

 

 
上一篇:Oracle 9i安装后,配置和启动企业管理器的详细过程 人气:970
下一篇:Oracle的sql*plus 人气:635
浏览全部Oracle教程的内容 Dreamweaver插件下载 网页广告代码 祝你圣诞节快乐 2009年新年快乐