文章詳情頁(yè)
使用Windows工具管理Nt上的Oracle數(shù)據(jù)庫(kù)
瀏覽:121日期:2023-11-15 15:15:25
link:http://www.eygle.com/faq/Use.Nt.tools.manage.Oracle.htm1.TOPTop 工具可以監(jiān)視最消耗系統(tǒng)資源的進(jìn)程 Pid 即process id,Windows是多線程服務(wù)器,每個(gè)進(jìn)程包含一系列線程,這個(gè)與UNIX不同,Unix每個(gè)Oralce進(jìn)程獨(dú)立存在,在Nt上所有線程由Oralce進(jìn)程衍生。所以只用TOP工具我們還無(wú)法找出每個(gè)連接的用戶進(jìn)程。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上由于某個(gè)進(jìn)程的sql或其他問題導(dǎo)致資源過度占用或消耗,比如如下這樣一條語(yǔ)句,那么我們?cè)鯓觼?lái)找到這條問題sql呢?2.QSLICE找到最消耗資源的線程號(hào),本例中為(6ec),為16進(jìn)制,需要轉(zhuǎn)換,v$process視圖中的進(jìn)程ID為十進(jìn)制使用getsql.sql腳本即可獲得當(dāng)前正在執(zhí)行的SQL語(yǔ)句:REM getsql.sqlREM author eygleREM 在windows上,已知進(jìn)程ID,得到當(dāng)前正在執(zhí)行的語(yǔ)句REM 在windows上,進(jìn)程ID為16進(jìn)制,需要轉(zhuǎn)換,在UNIX直接為10進(jìn)制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/運(yùn)行以上腳本:ok,找到這最消耗資源的問題SQL接下來(lái)就可以進(jìn)行針對(duì)性調(diào)整了.相關(guān)工具下載地址:http://www.microsoft.com/windows2000/techinfo/reskit/tools/existing/qslice-o.ASP
標(biāo)簽:
Oracle
數(shù)據(jù)庫(kù)
排行榜
