Nit*_*mar 1 oracle database-administration oracle11g
我有一个ORACLE RAC环境访问.详情是
数据库名称:orcl服务名称:orcl IP地址:192.168.1.1和192.168.1.2
SQL> host srvctl status database -d orcl
Instance orcl1 is running on node orclnode1
Instance orcl2 is running on node orclnode2
Run Code Online (Sandbox Code Playgroud)
我关心的是我的联系,正在建立使用
(DESCRIPTION=(ADDRESS=
(PROTOCOL=TCP)(HOST=192.168.1.1) (PORT=1521)
)(CONNECT_DATA=(SID=orcl1)))
Run Code Online (Sandbox Code Playgroud)
但是提供者希望它通过orcl服务名称连接.
我没有任何其他与此相关的信息.我是否正确连接或者我需要orcl服务名称的主机名或IP地址.
您的连接字符串在一个服务器/节点上引用一个实例.您应该使用公共服务名称,并识别它可用的所有服务器.
相当于你的是这样的(换行只是为了清晰起见):
(DESCRIPTION=(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.1)(PORT=1521))
(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.1.2)(PORT=1521))
)(CONNECT_DATA=(SERVICE_NAME=orcl)))
Run Code Online (Sandbox Code Playgroud)
只要它是可解析的,无论您是使用DNS名称还是IP HOST参数的IP地址都无关紧要.
您可能还需要LOAD_BALANCE或FAILOVER参数; 看文档.