Try to increase the init parameter(s) shared_pool_reserved_size and/or 
shared_pool_size. If the large pool is out of memory, increase the parameter large_pool_size. 

解决方案 »

  1.   

    按楼上说的,如果还不行不java池也增大
      

  2.   

    按楼上说的,如果还不行把java池也增大
      

  3.   

    如果共享池的大小设的已经够大了,那可能是由于SGA碎片引起
    可以执行alter system flush SHARED_POOL 试试看
      

  4.   

    这个我也碰到过增大shared_pool!!
      

  5.   

    ORA-00604 error occurred at recursive SQL level num Cause: An error occurred while processing a recursive SQL statement. A recursive SQL statement is one that applies to internal dictionary tables. 
    Action: If the situation described in the next message on the stack can be corrected, do so; otherwise, contact customer support. 
    ORA-04031 unable to allocate num bytes of shared memory num, num, num Cause: More shared memory is needed than was allocated in the operating system process. SGA private memory has been exhausted
    Action: Either use the DBMS_SHARED_POOL package to pin large packages, reduce your use of shared memory, or increase the amount of available shared memory by increasing the value set for the SHARED_POOL_SIZE initialization parameter.