Oracle BEQ方式连接配置
服务端和客户端在同一台机器上,可以使用BEQ连接,BEQ连接可以理解为进程间直接通信,不需要走网络监听,性能更高。
可以参考MOS:How To Connect Using the Bequeath Protocol (BEQ) in 8I (文档 ID 181317.1)
例如,我们在10.2.0.5 RAC的实例1上配置BEQ连接测试
1. 在tnsnames.ora 配置文件添加如下内容:
RACBEQ =
(DESCRIPTION =
(ADDRESS =
(PROTOCOL = BEQ)
(PROGRAM = /u01/app/oracle/product/10.2.0.5/dbhome_1/bin/oracle)
(ARGV0 = oraclejyrac1)
(ARGS = '(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))')
(ENVS = 'ORACLE_HOME=/u01/app/oracle/product/10.2.0.5/dbhome_1,ORACLE_SID=jyrac1')
)
(CONNECT_DATA =
(SERVICE_NAME = jyrac)
(INSTANCE_NAME = jyrac1)
)
)
2. tnsping 测试通:
[oracle@oradb27 admin]$ tnsping racbeq
TNS Ping Utility for Linux: Version 10.2.0.5.0 - Production on 24-JAN-2017 18:05:48
Copyright (c) 1997, 2010, Oracle. All rights reserved.
Used parameter files:
Used TNSNAMES adapter to resolve the alias
Attempting to contact (DESCRIPTION = (ADDRESS = (PROTOCOL = BEQ) (PROGRAM = /u01/app/oracle/product/10.2.0.5/dbhome_1/bin/oracle) (ARGV0 = oraclejyrac1) (ARGS = '(DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))') (ENVS = 'ORACLE_HOME=/u01/app/oracle/product/10.2.0.5/dbhome_1,ORACLE_SID=jyrac1')) (CONNECT_DATA = (SERVICE_NAME = jyrac) (INSTANCE_NAME = jyrac1)))
OK (30 msec)
3. 本地通过BEQ协议连接到数据库:
[oracle@oradb27 admin]$ sqlplus system/oracle@racbeq
SQL*Plus: Release 10.2.0.5.0 - Production on Tue Jan 24 17:37:08 2017
Copyright (c) 1982, 2010, Oracle. All Rights Reserved.
Connected to:
Oracle Database 10g Enterprise Edition Release 10.2.0.5.0 - 64bit Production
With the Partitioning, Real Application Clusters, OLAP, Data Mining
and Real Application Testing options
SQL> !ps -ef|grep BEQ
oracle 8102 1 0 17:37 ? 00:00:00 oraclejyrac1 (DESCRIPTION=(LOCAL=YES)(ADDRESS=(PROTOCOL=BEQ)))
oracle 8133 8100 0 17:37 pts/3 00:00:00 /bin/bash -c ps -ef|grep BEQ
SQL>
上面查看进程也可以确定进程确实是通过BEQ协议连接的。