首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > 其他数据库 >

懂得oracle中连接和会话

2013-11-05 
理解oracle中连接和会话??????????? ods.setUser(NC50_DEV)??????????? ods.setPassword(NC50_DEV)?

理解oracle中连接和会话

??????????? ods.setUser("NC50_DEV");

??????????? ods.setPassword("NC50_DEV");

??????????? java.util.Properties jup = new java.util.Properties();

??? jup.setProperty(OracleOCIConnectionPool.CONNPOOL_MIN_LIMIT, "2");?????? jup.setProperty(OracleOCIConnectionPool.CONNPOOL_MAX_LIMIT, "2");

??? jup.setProperty(OracleOCIConnectionPool.CONNPOOL_INCREMENT, "0");

??????????? ods.setPoolConfig(jup);

??????? Connection cx0 = ods.getConnection();

??????????? OCI连接池在第一次getconnection()时将根据配置初始化连接,并在每一个连接上建立一个会话。注意,连接上一旦建立了一个会话,这个连接将还可以再建会话。那么在此时,会任取一个建完会话的物理连接再建一个会话返回。当然这时也要受限于sessions设置。对于OCI连接池,每一个connection.close()都将实际关闭会话,但物理连接保留。所以可以得知,如果一个getconnection()中给某一个会话级临时表插入数据,然后close(),那么此数据将被删除。

5.关于专用服务器模式下processes参数

??????????? 对于隐式连接缓冲,每一个连接上建立一个会话,对于每一个会话都将对应一个dedicated process。

??????????? 对于OCI连接池,只有物理连接上建立的那个会话才对应一个dedicated process(这里记为DP_A,DP_B)。而其他会话对应一个PSUEDO process.这是一个轻量级process,它是不算processes数的。

??????? 所以关于这个问题“专用服务器模式是一个物理连接对应一个process,还是一个会话对应一个process?”,从这里可以理解oracle的设计思路确实一个是会话对应一个process,与物理连接不相关。但是实际的实现呢?当oci获得的connection上执行sql时,ORCLED的响应还是会借助到DP_A,DP_B上,如果DP_A,DP_B正忙,那就得一样地等。

转自:http://www.cnblogs.com/rootq/articles/1297395.html

热点排行