启动程序系统报错,plsql及sqlplus连接正常
Errors in file /home/oracle/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_j001_42779.trc:
ORA-00604: error occurred at recursive SQL level 1
ORA-04031: unable to allocate 264 bytes of shared memory ("shared pool","unknown object","CCUR^dafa7582","kglob")
查看trc日志,没看出异常信息,但基本应该是shared_pool 共享池的问题
普及下shared_pool的信息:
系统全局区SGA:
1)在一个instance只有一个sga
2)sga为所有session共享,随着instance启动而分配
3)instance down ,sga被释放
1.2 SGA的基本组件:Sga共享内存,linux中:tmsfs
1)shared pool
共享池是对SQL、PL/SQL程序进行语法分析、编译、执行的内存区域。共享池由库缓存(library cache),和数据字典缓存(data dictionary cache)以及结果缓存(result cache)等组成。共享池的大小直接影响数据库的性能。关于shared pool中的几个概念
①library cache:sql和plsql的解析场所,存放sql/plsql语句代码,以及它们的执行计划。以备其他用户共享(分析语句,并分析执行计划,放至library中以备共享。后期语句相同会被重用,