最近在做性能測試時,由於要掛載空間數據,開發人員直接將所有業務表都掛到了Oracle數據庫中。最近做了幾次測試發現響應時間和吞吐量都不是很理想,進行一番分析后懷疑可能在Oracle中出現問題,因此再網上找了一下相關的監控程序,最終發現Spotlight,但是沒有詳細的說明(也有可能是我沒找到),下面將我之前如何連接Oracle並進行監測的一些經驗分享一下,如有瑕疵請各位指教。
首先Spotlight的安裝和部署我就不多說了,我相信大家都是很聰明的,安裝一下so easy。
這里我要說的是一定要安裝Spotlight.On.Oracle、Spotlight.On.Oracle、Spotlight.On.Oracle,強調3次哦。
下面啟動Spotlight,界面如下所示:
點擊工具欄上的小插頭或者“file”->“connections”打開“Spotlight Connections Manager”,如下圖所示:
在連接Oracle數據庫前我們要先為待監控的數據庫創建一個監控用戶,通過這個監控用戶來獲取監控信息,首先打開“file”->“Oracle User Wizard”界面,如下圖所示:
點擊“next”進入管理員權限登錄界面,記住是管理員權限的用戶,因為我們要創建新用戶,如下圖所示:
此處可以通過Oracle客戶端獲取網絡服務名,也可以直接通過“服務器IP/數據庫實例”方式進行設置,配置完成后點擊“next”,如下圖所示:
登錄成功出現以上界面,否則提示失敗原因界面,如果待監測數據庫之前沒有創建過監測用戶選擇“Create a new user(recommended)”,否則選擇“Set up an existing user”(選擇一個已存在的用戶),點擊“next”按鈕,如下圖所示:
輸入待創建的監控用戶名稱和密碼后,點擊“next”,如下圖所示:
選擇表空間(一般默認即可)后一直點擊“next”,默認到創建完成,如下圖所示:
點擊“Finish”完成配置,之后在“Spotlight Connections Manager”中創建新的Oracle監控連接,如下圖所示:
雙擊“New connection”,在彈出窗口中選擇連接類型和輸入新創建的連接名稱,如下圖所示:
點擊“OK”,彈出連接參數配置窗口,如下圖所示:
如果需要監控Oracle ASM和OS還需設置相關連接參數,否則將其前方的復選框取消勾選即可,如下圖所示:
點擊“OK”,在“Spotlight Connections Manager”中選擇該連接名稱后,點擊“Connect”進行連接,如下圖所示:
連接成功后,彈出校正時間提示窗口,設置校正時間(即刷新時間),如下圖所示:
設置完成后點擊“ok”,開始監控連接的Oracle數據庫,如下圖所示:
注:綠色區域代表相關區域正常,出現黃色區域代表該區域超出標准值出現警告,紅色區域代表該區域出現異常
Sessions:代表會話區包括(Response:響應會話,Total Users:總用戶量,Active Users:活躍用戶量,Active Sessions:活躍會話占比)
Server Processes:服務器進程
PGA(Program Global Area):是為每個連接到Oracledatabase的用戶進程保留的內存。
Target:PGA_AGGREGATE_TARGET-此參數用來指定所有session總計可以使用最大PGA內存。
Used:PGA的總量(程序全局區)目前使用的所有活動會話。
Dedicated:專用服務器進程
Shared:共享服務器
Dispatchers:共享連接的分派器數量
Parallel Query:並行查詢,使用多個操作系統級別的Server Process來同時完成一個SQL查詢。
Job Queue:工作隊列
SGA:SystemGlobal Area是OracleInstance的基本組成部分,在實例啟動時分配;系統全局域SGA主要由三部分構成:共享池、數據緩沖區、日志緩沖區。
Current Size:實際大小
Buffer Cache:數據高速緩存區
Recycle Pool:回收池
Keep Pool:保留池
Buffer Cache Hit Ratio:高速緩存命中率
Redo Buffer:重做日志緩沖區
Shared Pool:共享池
Shared Pool Used:共享池使用率
Java Pool:Java池-為Java命令的語法分析提供服務。
Large Pool:大型池-是SGA中一個可選的內存區域,它只用於shared server環境。
Auto off
Background Processes:后台進程
Database Writer:數據庫寫入器
Recovery Writer:恢復區寫入器
Redo Log Writer:重做日志寫入器
Archiver:歸檔進程
Disk Storage:磁盤存儲
Database Files:數據庫文件
Flashback Recovery:閃回恢復區
Redo Logs:重做日志
Archive Log:歸檔日志
這次只是一個簡單的使用說明,主要面向菜鳥級介紹,同時也是之前經驗的一個分享,如有錯誤請高手積極指正,關於Oracle的相關內容,大家可以百度一下“oracle數據庫體系結構詳解”