Unix

Oracle 9i 實例記憶體使用情況?

  • July 31, 2009

我的問題專門涉及一種方法來判斷 UNIX (Solaris) 伺服器上的 Oracle 實例正在使用多少記憶體。

例如(我真的會過度簡化這個……),如果我看到有 8GB 的​​ RAM 正在使用中,是否有一種“簡單”的方法(通過 TOAD 或某些 UNIX 工具)來辨識該記憶體的哪一部分是被特定的 Oracle 實例使用?

通過與 Oracle 講師聯繫和 Sun 支持站點搜尋,我能夠找到“pmap”命令用法來獲取 Oracle 程序的“anon”記憶體,但希望有人能提供替代解決方案。

我確實可以使用 Sun 管理中心(如果有幫助的話),我願意接受任何解決方案,甚至用漢堡和啤酒賄賂伺服器。感謝大家!

Oracle 實例有兩種類型的記憶體。SGA 是共享記憶體,而 PGA 是只能由單個程序訪問的記憶體。如果您連接到具有適當權限的實例(例如 DBA 或使用 SELECT_CATALOG_ROLE),您可以

SELECT SUM(VALUE) FROM V$SGA;

SELECT SUM(PGA_ALLOC_MEM) FROM V$PROCESS;

查看每個人的總數。

如果 Oracle 在單獨的使用者上執行,您可以使用 prstat 查看它總共使用了多少記憶體:

prstat -a

引用自:https://serverfault.com/questions/48283