通过查询v$process视图可以知道某个进程消耗的内存情况,相关字段为PGA_USED_MEM,PGA_ALLOC_MEM,PGA_FREEABLE_MEM,PGA_MAX_MEM。
SQL> SELECT spid, program,
pga_max_mem max,
pga_alloc_mem alloc,
pga_used_mem used,
pga_freeable_mem free
FROM V$PROCESS
WHERE spid = 2587;
SPID PROGRAM MAX ALLOC USED FREE
----- ---------------------------------- ---------- ---------- ---------- ----------
2587 oracle@ludwig.pinehorse.com (SMON) 3849704 3718632 954264 1507328
V$PROCESS_MEMORY视图可以查看更详细的分类信息,包含"SQL",
"PL/SQL", "OLAP" and "JAVA",以及"Freeable" 和"Other"。
SQL> SELECT p.program,
p.spid,
pm.category,
pm.allocated,
pm.used,
pm.max_allocated
FROM V$PROCESS p, V$PROCESS_MEMORY pm
WHERE p.pid = pm.pid
AND p.spid = 2587;
PROGRAM SPID CATEGORY ALLOCATED USED MAX_ALLOCATED
---------------------------------- ----- ---------- --------- ------- -------------
oracle@ludwig.pinehorse.com (SMON) 2587 SQL 185068 76120 2211796
oracle@ludwig.pinehorse.com (SMON) 2587 PL/SQL 2068 136 2068
oracle@ludwig.pinehorse.com (SMON) 2587 Freeable 1507328 0
oracle@ludwig.pinehorse.com (SMON) 2587 Other 2024168 2024168
UNIX下的pmap命令也可以实现类似的功能。
[root@ludwig ~]# pmap -d 2587
2587: ora_smon_db11
Address Kbytes Mode Offset Device Mapping
00110000 4 rwx-- 0000000000110000 000:00000 [ anon ]
00111000 648 r-x-- 0000000000000000 0fd:00000 libhasgen11.so
001b3000 4 rwx-- 00000000000a1000 0fd:00000 libhasgen11.so
001b4000 12 rwx-- 00000000001b4000 000:00000 [ anon ]
001b7000 32 r-x-- 0000000000000000 0fd:00000 libocrutl11.so
001bf000 4 rwx-- 0000000000007000 0fd:00000 libocrutl11.so
001c0000 4 rwx-- 00000000001c0000 000:00000 [ anon ]
001c1000 4 r-x-- 0000000000000000 0fd:00000 libaio.so.1.0.1
001c2000 4 rwx-- 0000000000000000 0fd:00000 libaio.so.1.0.1
001c3000 76 rwx-- 00000000001c3000 000:00000 [ anon ]
001e2000 1552 r-x-- 0000000000000000 0fd:00000 libnnz11.so
00366000 148 rwx-- 0000000000184000 0fd:00000 libnnz11.so
0038b000 4 rwx-- 000000000038b000 000:00000 [ anon ]
0038c000 468 r-x-- 0000000000000000 0fd:00000 libocr11.so
00401000 4 rwx-- 0000000000074000 0fd:00000 libocr11.so
...
48fc7000 8 rwx-- 0000000048fc7000 000:00000 [ anon ]
4922b000 28 r-x-- 0000000000000000 0fd:00000 librt-2.5.so
49232000 4 r-x-- 0000000000006000 0fd:00000 librt-2.5.so
49233000 4 rwx-- 0000000000007000 0fd:00000 librt-2.5.so
bfdd4000 96 rwx-- 00000000bfdd4000 000:00000 [ stack ]
mapped: 548640K writeable/private: 6512K shared: 417796K
--EOF
转发至微博
转发至微博