天天看點

如何檢視oracle程序消耗的記憶體

經常有人問到如何在Unix下确定程序消耗的記憶體資源,以及為何Top工具的顯示非常高。

有人說Top的輸出不精确,這種說法是不确切的。實際上是Top輸出顯示的Oracle程序記憶體使用,包含了SGA部分。這也是SGA的意義所在。

SGA可以被共享,可以被所有程序所通路,在程序的尋址空間裡就包含了SGA的大小。

至于如何更為精确的确定程序的記憶體消耗,本文簡要介紹如下(在QuickIO下,你可能無法看到本文描述情況):

1.系統平台及資料庫版本

2.Top輸出

3.Pmap輸出及程序記憶體計算

計算背景程序使用的記憶體資源:

337360K - 266240K = 71,120k

這就是一個程序所消耗的記憶體.

4.使用者程序記憶體使用舉例

從PMAP的輸出中我們可以看到程序所調用的庫檔案等,及其讀寫狀态。