oracle 常驻连接池,11g新特性:常驻连接池DRCP之三

五 如何在DB中配置DRCP?

在11g中,系统默认包含了一个连接池:SYS_DEFAULT_CONNECTION_POOL,这个池默认被创建,但默认该池是不启动的,如果要启动默认的连接池,必须显式地执行启动DRCP的命令,oracle提供dbms_connection_pool package来执行这个工作,如果连接池被显式地启动,必须显式地被停掉,当实例宕掉时,如果DRCP是活动的,则实例启动时,DRCP也将自动实动。

启动DRCP需要以下步骤:

A 用sysdba权限连接到sqlplus

B 执行exec dbms_connection_pool.start_pool();

C 查看DRCP的状态

[@more@]

六 客户端如何连接到DRCP?

如果是专用服务器连接,则SERVER=DEDICATED,如果是DRCP连接,则SEVER=POOLED。如果在tnsnames.ora中指定了SERVER=POOLED,但并没有在实例中启动DRCP,则当客户请求连接时,DB会报ORA-12520错误。如果要指定客户端请求到DRCP,则客户端的tnsnames.ora中的连接字符串必须指定连接类型是POOLED,配置方式如下所示:

dhcp11g =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = 10.1.5.26)(PORT = 1521))

(CONNECT_DATA =

(SERVER = POOLED)

(SERVICE_NAME = dbtest)

)

)

说明:11g的客户端才可以使用DRCP,如果10g的客户端在tnsnames.ora中指定了SERVER=POOLED,则连接时报ORA-56606。

六 如何在DB中掉停DRCP

A 用sysdba权限连接到sqlplus

B 执行exec dbms_connection_pool.stop_pool();

七 如何调整DRCP的配置?

DRCP启动时使用的是默认配置参数,如果要调整DRCP的配置参数,需要调用dbms_connection_pool包的configure_pool过程去调整DHCP的高级选项,也可以调用dbms_connection_pool包的alter_param过程只仅改指定的参数而不影响其它的参数,DRCP可调整的参数可以查看dba_cpool_info表,每个参数的具体含义请自己查阅administrator guide手册的p128/129页,具体的语法如下所示:

SQL> exec print_table('select * from dba_cpool_info');

CONNECTION_POOL : SYS_DEFAULT_CONNECTION_POOL

STATUS : ACTIVE

MINSIZE : 4

MAXSIZE : 40

INCRSIZE : 2

SESSION_CACHED_CURSORS : 20

INACTIVITY_TIMEOUT : 300

MAX_THINK_TIME : 120

MAX_USE_SESSION : 500000

MAX_LIFETIME_SESSION : 86400

-----------------

SQL> exec dbms_connection_pool.alter_param ('','minsize','10');

PL/SQL procedure successfully completed.

SQL> exec print_table('select * from dba_cpool_info');

CONNECTION_POOL : SYS_DEFAULT_CONNECTION_POOL

STATUS : ACTIVE

MINSIZE : 10

MAXSIZE : 40

INCRSIZE : 2

SESSION_CACHED_CURSORS : 20

INACTIVITY_TIMEOUT : 300

MAX_THINK_TIME : 120

MAX_USE_SESSION : 500000

MAX_LIFETIME_SESSION : 86400

-----------------

PL/SQL procedure successfully completed.

八 如何恢复DHCP的默认选项

A 用sysdba权限连接到sqlplus

B 执行exec dbms_connection_pool.restore_defaults;

九 关于DHCP相关的字典

dba_cpool_info

v$cpool_stats

v$cpool_cc_stats

十 测试DHCP的总结

在实际的使用,如果要使用DHCP,则需要注意在tnsnames.ora中创建两个TNS连接字符串,将前台短的连接都指向DHCP连接,把后台长的连接则向DEDICATED SERVER连接,这样就可以满足一般轻量权的web application.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值