[AD]共享池中的pin和lock
一,Library Cache Pin及Library Cache Lock分析1,Oracle使用两种数据结构来进行SharedPool的并发访问控制:lock和pin。lock比pin具有更高的级别。2,lock在handle上获得,在pin一个对象之前,必须首先获得该handle的锁定。锁定主要有3中模式:NULL、Share和Exclusive。在读取访问对象时,通常需要获取NULL(空)模式以及S...
[AD]共享池的ORA-04031错误
一,什么是ORA-04031错误1,SharedPool的根本问题只有一个,就是碎片过多带来的性能影响。当尝试在共享池分配大块的连续内存失败(很多时候是由于碎片过多,而且非真是内存不足)时,Oracle首先清除共享池中当前没有使用的所有对象,是空闲内存块合并。如果仍然没有足够大的单块内存可以满足需要,就会产生ORA-04031错误。...
[AD]共享池历程概述
一,Shared Pool 的基本原理1,SharedPool是Oracle SGA设置中最复杂也是最重要的一部分内容,Oracle通过Shared Pool来实现SQL共享、减少代码硬解析,从而提高数据库的性能。在某些版本中,如果设置不当,SharedPool可能会极大地影响数据库的正常运行。2,在Oracle 7i之前,Shared Pool并不存在,每个Oracle连接都有一个独...