调整egyle的sga的方法技巧
首先是几个错误信息:
1)
skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3
Tue Mar 23 13:42:02 2004
skgpspawn failed:category = 27142, depinfo = 12, op = fork, loc = skgpspawn3
:q
该提示说明数据库无法spawn a new session. (创建新的session)
2)
ERROR:
ORA-12540: TNS: 超出内部限制
内部限制超过,通常说明某些系统资源不足.
3)日志中记录如下错误信息,说明磁盘异步IO出现问题:
WARNING: aiowait timed out 2 times
Tue Aug 26 15:33:32 2003
WARNING: aiowait timed out 2 times
Tue Aug 26 15:33:34 2003
4)alert文件中还记录了以下错误信息:
Tue Aug 26 21:37:40 2003
WARNING: EINVAL creating segment of size 0x0000000190400000
fix shm parameters in /etc/system or equivalent
该信息说明内核参数设置过小或者和SGA不匹配
调试中用到的一些命令:
1)使用lsnrctl services检查监听器的状态,查看是否用连接被拒绝,如下:
例程 "hswapdb", 状态 READY, 包含此服务的 1 个处理程序...
处理程序:
"DEDICATED" 已建立:21 已拒绝:6 状态:ready
LOCAL SERVER
服务 "hswapdbXDB.eygle.com" 包含 1 个例程。
例程 "hswapdb", 状态 READY, 包含此服务的 1 个处理程序...
处理程序:
2)unix下检查系统日志
wapplatform:/>dmesg
3)检查系统内存及交换区使用(这个非常重要)
# /usr/local/bin/top
last pid: 16899;load averages:0.82,0.81,0.8321:49:05
1230 processes:1228 sleeping, 1 running, 1 on cpu
CPU states: 50.1% idle,7.4% user,8.6% kernel, 33.9% iowait,0.0% swap
Memory: 8192M real, 118M free, 12G swap in use, 11G swap free
我们发现系统仅有8G RAM,物理内存仅有118M可用
现在SWAP区使用了12G
5)增加swap区
增加swap区
wapplatform:/>df -k
文件系统 千字节 用了 可用 容量 挂接在
/dev/dsk/c0t1d0s0 3099093 105421 2931691 4% /
/dev/dsk/c0t2d0s0 10325760 8359637 1862866 82% /usr
/proc 0 0 0 0% /proc
fd 0 0 0 0% /dev/fd
mnttab 0 0 0 0% /etc/mnttab
/dev/dsk/c0t1d0s3 1018382 285914 671366 30% /var
swap 3904 24 3880 1% /var/run
swap 3936 56 3880 2% /tmp
/dev/dsk/c0t1d0s5 1671823 459202 1162467 29% /opt
/dev/dsk/c0t2d0s7 7087473 6068462 948137 87% /export/home
/dev/dsk/c2t1d0s7 17413250 15900222 1338896 93% /export/home2
/dev/dsk/c0t3d0s7 17413250 13749782 3489336 80% /export/home1
/dev/dsk/c0t1d0s1 771110 382410 334723 54% /usr/openwin
/export/home/wapgw/luke
7087473 6068462 948137 87% /home/wap
wapplatform:/var/swap>cd /export/home1
wapplatform:/export/home1>ls
TT_DB lost+found oracle oracli9
wapplatform:/export/home1>mkdir swap
wapplatform:/export/home1>cd swap
wapplatform:/export/home1/swap>mkfile -v 1g swapfile1
swapfile1 1073741824 bytes
wapplatform:/export/home1/swap>id
uid=0(root) gid=1(other)
wapplatform:/export/home1/swap>swap -a /export/home1/swap/swapfile1
wapplatform:/export/home1/swap>swap -s
总数:分配了 623160k 字节 + 保留 162704k = 已使用 785864k,1010936k 可用
6)检查system配置文件
$ cat /etc/system
.......................
set shmsys:shminfo_shmmax=4096000000
set shmsys:shminfo_shmmin=1
set shmsys:shminfo_shmmni=200
set shmsys:shminfo_shmseg=200
set semsys:seminfo_semmap=1024
set semsys:seminfo_semmni=2048
set semsys:seminfo_semmns=2048
set semsys:seminfo_semmnu=2048
set semsys:seminfo_semume=200
set semsys:seminfo_semmsl=2048
个人总结:
sga/swap设置不当会引起如下现象:
用户请求得不到及时响应,新的进程不断尝试建立连接,直到连接数被耗荆因此当有类似情况发生时,处理步骤为:
1)当然是查看alert文件,看具体报的错误
2)查看sga设置情况
3)用top工具检查系统运行状况
4)定位错误,调整sga大小
本文地址:http://www.45fan.com/a/question/68167.html