调整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 20034)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大小