我们单位的一个应用系统,主要是一个逻辑很复杂的PL/SQL存储过程;数据库是一个很牛的SUN服务器;
现在的问题是为什么每一个数据库进程都占有很大的内存10M-20M左右,而且很长时间不释放;他们都是怎么用了?怎样限制?
数据库主要参数
open_cursors = 10000
max_enabled_roles = 30
db_block_buffers = 75000
shared_pool_size = 512000000
large_pool_size = 600000000
java_pool_size = 0
log_checkpoint_interval = 10000
log_checkpoint_timeout = 1800
processes = 1015
log_buffer = 64000000
从V$session里查SQL语句几乎都是:
begin dbms_session.reset_package; end;
操作系统查询的进程内存使用情况结果:
# pmap -x 9057
9057: oracleedumis (LOCAL=NO)
Address Kbytes Resident Shared Private Permissions Mapped File
0000000100000000 29336 15864 15864 - read/exec oracle
0000000101DA4000 464 304 224 80 read/write/exec oracle
0000000101E18000 1896 1320 - 1320 read/write/exec [ heap ]
0000000380000000 1543328 1543328 1543328 - read/write/exec [ anon ]
FFFFFFFF7C800000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7C900000 24 24 24 - read/exec nss_files.so.1
FFFFFFFF7CA06000 8 8 - 8 read/write/exec nss_files.so.1
FFFFFFFF7CB00000 8 8 8 - read/write/exec/shared [ anon ]
FFFFFFFF7CC00000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7CD00000 8 - - - read/write/exec [ anon ]
FFFFFFFF7CE00000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7CF00000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7D000000 16 16 16 - read/exec libmp.so.2
FFFFFFFF7D104000 8 8 - 8 read/write/exec libmp.so.2
FFFFFFFF7D200000 88 72 72 - read/exec libm.so.1
FFFFFFFF7D316000 8 8 - 8 read/write/exec libm.so.1
FFFFFFFF7D400000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7D500000 8 8 8 - read/exec libkstat.so.1
FFFFFFFF7D602000 8 8 - 8 read/write/exec libkstat.so.1
FFFFFFFF7D700000 24 24 24 - read/exec librt.so.1
FFFFFFFF7D806000 8 8 8 - read/write/exec librt.so.1
FFFFFFFF7D900000 32 32 32 - read/exec libaio.so.1
FFFFFFFF7DA08000 8 8 - 8 read/write/exec libaio.so.1
FFFFFFFF7DB00000 720 560 560 - read/exec libc.so.1
FFFFFFFF7DCB4000 56 56 8 48 read/write/exec libc.so.1
FFFFFFFF7DCC2000 8 8 - 8 read/write/exec libc.so.1
FFFFFFFF7DD00000 8 8 8 - read/exec libsched.so.1
FFFFFFFF7DE02000 8 8 - 8 read/write/exec libsched.so.1
FFFFFFFF7DF00000 8 8 8 - read/exec libc_psr.so.1
FFFFFFFF7E000000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7E100000 32 24 24 - read/exec libgen.so.1
FFFFFFFF7E208000 8 8 - 8 read/write/exec libgen.so.1
FFFFFFFF7E300000 56 40 40 - read/exec libsocket.so.1
FFFFFFFF7E40E000 16 16 8 8 read/write/exec libsocket.so.1
FFFFFFFF7E500000 1000 392 392 - read/exec libnwora.so
FFFFFFFF7E6F8000 168 80 56 24 read/write/exec libnwora.so
FFFFFFFF7E722000 864 - - - read/write/exec libnwora.so
FFFFFFFF7E800000 4968 1432 1432 - read/exec libjox8.so
FFFFFFFF7EDD8000 320 232 112 120 read/write/exec libjox8.so
FFFFFFFF7EE28000 8 - - - read/write/exec libjox8.so
FFFFFFFF7EF00000 672 264 264 - read/exec libnsl.so.1
FFFFFFFF7F0A8000 56 56 16 40 read/write/exec libnsl.so.1
FFFFFFFF7F0B6000 40 8 - 8 read/write/exec libnsl.so.1
FFFFFFFF7F100000 16 16 - 16 read/write/exec [ anon ]
FFFFFFFF7F200000 8 8 8 - read/exec libskgxp8.so
FFFFFFFF7F300000 8 8 8 - read/write/exec libskgxp8.so
FFFFFFFF7F400000 8 8 8 - read/exec libdl.so.1
FFFFFFFF7F500000 8 8 - 8 read/write/exec [ anon ]
FFFFFFFF7F600000 152 152 152 - read/exec ld.so.1
FFFFFFFF7F724000 16 16 - 16 read/write/exec ld.so.1
FFFFFFFF7FFEC000 80 80 - 80 read/write [ stack ]
---------------- ------ ------ ------ ------
total Kb 1584640 1564592 1562712 1880
# [B]操作系统查询的进程内存使用情况结果:[/B] [B]从V$session里查SQL语句几乎都是:[/B]