Warning: OCISessionBegin: ORA-00604: error occurred at recursive SQL level 1 ORA-04031: unable to allocate 4200 bytes of shared memory ("shared pool","unknown object","sga heap","state objects") in /home/www/website/dsl/include/db_oci8.inc on line 20
这是什么原因造成该如何解决??

解决方案 »

  1.   

    it looks a share pool problem , enlarege it by setting share_pool_size in initXXX.ora file and restart your db
      

  2.   

    我的内存为1G:
    SGA总容量:66.81265M
    共享池:30M
    缓冲区高速缓存:16M
    大型池:600k
    java池:20M
    目前数据库有260几兆
    请问我该怎么调优?
      

  3.   

    sga = 40%phsical memory
      

  4.   

    你的SGA太小了。
    首先看你的机器上是不是还有其他应用。我们假设没有。
    那么你应该把70-80%的内存给SGA,而共享池有100M差不多了。
    SGA=share_pool_size+db_block_size*db_block_buffers+log_buffers
    log_buffers给1M,则根据你的db_block_size,能估算出你的db_block_buffers。