linux 下 oracle9i 错误,急,急。。。。
如何配置linux8 下的 oracle9i 啊?
4031错误是困扰我1年之久的噩梦,不过看你的出错信息,和我碰到的问题不是一回事。
先问一句,你调整过Linux Kernel的shmmax参数了吗?
用ipcs 查一下,看看Oracle使用的共享内存是否分段了?如果分段了的话,这样解决:
echo 512*1024*1024 > /proc/sys/kernel/shmmax
dbshut
dbstart
先修改Kernel参数,设定共享内存段最大Size为512MB,然后重起Oracle,再ipcs。
我感觉你的错误主要是这个原因。另外也有可能是共享内存不足,也有可能是sql语句的问题造成共享内存不足,可能性比较多,需要提供更多的信息才能判断。
另外建议去 www.itpub.net 提关于Oracle的问题,那里是Oracle讨论水平最高的,有次我都解决不了的问题,都在那里的精华区找到了解决的办法。
就是在console下面敲
ipcs
然后就可以看到共享内存,信号量和消息队列的情况,你需要看看Shared Memory Segments里面Oracle使用的是一个单块内存,还是使用了好多快内存?正常情况下Oracle应该使用一块内存,大小基本上等于SGA。如果分成很多块就说明分段了,你需要按照我上面教你的办法解决。
Linux Kernel默认共享内存Size为32MB,对于Oracle来说是肯定不够用的,必须改。
在TOAD的有一项 Kill/Trace Session,看看有哪些活动的Session
不知道你的系统是干什么的,large pool的size只有50多M的确有点小,该大一点试试
贴一下你的init.ora
没有设置large_pool_size,oracle就用share_pool来存储user
session,结果就会造成share_pool产生很多碎片