试题详情
简答题某客服中心出现数据库宕机的故障,分析数据库日志,发现如下错误信息:ORA-04031unabletoallocatestringbytesofsharedmemory,请分析数据库出现异常的原因,以及如何处理。
  • 原因分析:
    共享池主要包括数据字典CACHE和SQL区(库CACHE),当在共享内存中分配不到连续内存时,ORACLE首先将现在没有用的目标(SQL)置换出去,然后合并空闲的自由空间“块”,如果请求的SQL空间大于最大的单个“块”,则ORACLE会报“ORA-04031”。客服系统出现该错误主要是客服系统使用了大量的动态SQL语句,占用了大量共享池。
    处理方法:
    出现4031错误的原因是库CACHE或保留共享内存空间出现碎片或空间不够。大多数情况是应用问题或SHARED_POOL_SIZE,SHARED_POOL_RESERVED_SIZE、SHARED_POOL_RESERVED_MIN_ALLOC设置不当。所以在增加共享内存大小之前先进行上述分析。分析过程如下:
  • 关注下方微信公众号,在线模考后查看

热门试题