ORA-04031 ORA-04031out of shared memory when trying to allocate num bytes (str) Cause:More shared memory is needed than was allocated in the SGA. Action:Reduce use of shared memory, or increase the amount of available shared memory by increasing the value of the initialization parameter SHARED_POOL_SIZE. ________________________________________

解决方案 »

  1.   

    共享内存不够,把 SHARED_POOL_SIZE 的值设置大一点就可以啦~具体方法:
    D:\Oracle\admin\OraName\pfile\init.ora
    ----------------(数据库目录)
    OraName 是数据库名
    pfile 是文件夹.
    init.ora 是文件(可以用 "记事本" 来打开)找到 shared_pool_size 就可以把它的值设大些啦(起码要大于 8132 呀 :)   )
      

  2.   

    增大以下初始化参数试试。
    shared_pool_size
    java_pool_size
    large_poo_size 
    亦可查询v$sgastat视图获取内存结构信息。
      

  3.   

    shared_pool_size  一般默认只有 16M可以设置大一点~ 方便大量的数据查询