ORA-04030

ORA-04030:out of process memory when trying to allocate string bytes

 

这个异常的产生、解决,网上有很多方案,不过都是类似的。无非修改系统限制和修改数据库配置。

 

折腾了一天,按网上说的修改stack、memory后都没成功。最终发现原因是系统ulimit的data没有修改,默认130M,所以oracle进程最大130M,而Oracle的sga设置的2G,pga 750M,远远大于130M导致。

将ulimit的data设为不受限或一个大值即可。

 

改前

$ ulimit -a

time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         131072
stack(kbytes)        4194304
memory(kbytes)       4194304
coredump(blocks)     2097151
nofiles(descriptors) 2000

 

改后

$ ulimit -d 4194304

$ ulimit -a
time(seconds)        unlimited
file(blocks)         unlimited
data(kbytes)         4194304
stack(kbytes)        4194304
memory(kbytes)       4194304
coredump(blocks)     2097151
nofiles(descriptors) 2000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值