日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > windows >内容正文

windows

利用Procexp工具监控Windows平台上的Oracle数据库性能

發布時間:2023/12/10 windows 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 利用Procexp工具监控Windows平台上的Oracle数据库性能 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
我們可以從http://technet.microsoft.com/en-us/sysinternals下載到Windows平臺上的系統內部調試工具包,這些工具中大部分是由Mark Russinovich編寫的,其中最為著名的tools包括進程管探測器(Process Explorer)、Regmon等。 這里我們要介紹的是使用Procexp工具監控Windows平臺上的Oracle性能信息。Procexp是一套功能齊全的進程信息管理工具,它使用圖形界面顯示(GUI),可以把它看做是Windows平臺上taskmgr.exe任務管理器的擴展,事實上它完全足以代替taskmgr,前提是用戶需要有一定的OS基礎。 我們來看看Procexp針對運行在Windows上的Oracle(一種不太推薦的組合)時所能監控的信息: 1.進程屬性
  • 包括進程的性能數據,包括CPU、Virtual Memory、Physical Memory、I/O、Handles
  • 查看詳細的線程信息(包括個別線程的CPU使用率)
  • 查看線程堆棧(thread stack)
  • Kill/suspend thread
2.系統全局信息
  • 提供系統級別的性能數據
3.創建進程的DUMP文件
  • 創建FULL或minidump轉儲以便診斷BUG
4.識別文件句柄(Handle)或動態鏈接庫(DDL)
  • 可以用來判斷進程鎖住了那些DDL文件或普通文件句柄
當我們在Windows上成功啟動Oracle實例后就可以通過Procexp.exe工具來監控數據庫性能了,使用十分簡便,選中"Oracle.exe"進程之后右鍵菜單Properties即可瀏覽進程的屬性:?選中Performance面板后可以瀏覽進程的性能數據,這就像是Windows上的nmon命令,注意要使用管理員身份運行Procexp.exe,否則可能性能數據無法正確收集而顯示N/A:?選中Performance Graphy面板瀏覽圖形化的性能趨勢圖:?? 點擊Thread面板我們可以瀏覽Oracle.exe進程下的線程信息,Windows平臺上的一點不便就是無法通過線程信息直接判斷該線程是哪個"后臺進程"或"服務進程",需要配合v$process視圖才能做到。SQL> select spid ,program from v$process;SPID PROGRAM ------------------------ --------------------PSEUDO 3124 ORACLE.EXE (PMON) 4328 ORACLE.EXE (VKTM) 5096 ORACLE.EXE (GEN0) 2840 ORACLE.EXE (DIAG) 2068 ORACLE.EXE (DBRM) 2464 ORACLE.EXE (PSP0) 4468 ORACLE.EXE (DIA0) 120 ORACLE.EXE (MMAN) 4424 ORACLE.EXE (DBW0) 1312 ORACLE.EXE (LGWR) 684 ORACLE.EXE (CKPT) 5684 ORACLE.EXE (SMON) 1016 ORACLE.EXE (RECO) 4516 ORACLE.EXE (MMON) 1108 ORACLE.EXE (MMNL) 6108 ORACLE.EXE (NSS2) 2728 ORACLE.EXE (SHAD)18 rows selected.

以上SPID=3124即指TID為3124的線程為PMON"后臺進程",在Thread面板上能夠直接了解到某個線程的CPU使用率,這在我們診斷Oracle.exe進程有過高的CPU使用率時可以方便定位;點擊stack按鈕可以調出該線程當前的調用棧,這在我們確定BUG的時候很有用。?? 同時在以上Thread面板上還可以使用Kill/Suspend按鈕來殺死或停止某個異常線程(前提是我們確認所要殺死的線程是非關鍵后臺的non-critical background thread),在Windows平臺上這原本是需要使用orakill命令來完成的。?TCP/IP面板可以為我們提供簡要的進程網絡信息,包括Local Address和Remote Address,如果要獲取更完整的信息可以配合其他網絡監控工具(如工具包中的TCPView):????另一個十分有用的功能是Environment面板,該面板用以顯示詳細的環境變量信息,如:Path,TEMP,ORACLE_SID,CLASSPATH等等,在診斷一些本地登錄問題或實例異常問題時十分有效:?Procexp工具也能像taskmgr那樣監控系統級的性能信息,而且更為詳細,點擊主面板上的View -> System Information:???如上文所述View DDL/Handle功能可以幫助我們了解Oracle進程所調用的動態鏈接庫文件(DDL)和所持有的文件句柄(Handle)信息,因為Windows平臺上某個被打開的文件時無法被同時修改或移動的,這在我們維護過程中可能造成許多麻煩, 而又因為win平臺上沒有如lsof,fuser這樣的工具,所以我們在診斷Oracle軟件的某些文件鎖定問題時可以借助于該功能。?如上圖所示Oracle.exe持有”\Device\NamedPipe\*oraspawn_pipe*.4284“等多個文件的句柄。?如上圖所示Oracle.exe加載了多個ora開頭的DDL,因為Windows平臺上的特殊性,Oracle軟件大量使用DDL庫來替換在Unix平臺上編譯在Oracle 2進制鏡像中的指令,這樣方便了升級(直接替換DDL文件就可以了,無需編譯,這也導致Windows平臺上PSU/CPU補丁發布的特殊性),可以注意到這些DDL文件還標有Version信息,大多為11.02.0000.0001,編譯時間為2010/2/10 9:01。 在較新版本的Procexp工具中還加入了create dump功能,以完善該工具的診斷能力。針對Oracle實例的異常現象和Bug可以創建進程轉儲信息,以便提交給Oracle Support分析問題,一般來說你并不需要親自分析dump文件,這是一項高級功能,不要對正常運行著的生產數據庫使用這一終極手段。?總結?如果你還在抱怨Windows平臺上為什么沒有一個如Unix平臺上NMON功能強大的監控軟件的話,那么Procexp會是一個非常杰出的選擇,另一點需要感恩的是這是一款免費軟件,訪問該軟件的Homepage,可以讓你了解更多的有用信息。


本文轉自maclean_007 51CTO博客,原文鏈接:http://blog.51cto.com/maclean/1277855


總結

以上是生活随笔為你收集整理的利用Procexp工具监控Windows平台上的Oracle数据库性能的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。