jdbc 怎么连接rac数据库 域名方式

jdbc 怎么连接rac数据库 域名方式,第1张

域名方式?

RAC应该用服务名的方式,就是下面的方法1:

Java JDBC Thin Driver 连接 Oracle有三种方法,如下:

1: Oracle JDBC Thin using a ServiceName:

jdbc:oracle:thin:@//<host>:<port>/<service_name>

Example: jdbc:oracle:thin:@//192.168.2.1:1521/XE

注意这里的格式,@后面有//, 这是与使用SID的主要区别。

这种格式是Oracle 推荐的格式,因为对于集群来说,每个节点的SID 是不一样的,但是SERVICE_NAME 确可以包含所有节点。

2: Oracle JDBC Thin using an SID:

jdbc:oracle:thin:@<host>:<port>:<SID>

Example: jdbc:oracle:thin:@192.168.2.1:1521:X01A

Note:

Support for SID is being phased out. Oracle recommends that users switch over to usingservice names.

3:Oracle JDBC Thin using a TNSName:

jdbc:oracle:thin:@<TNSName>

Example: jdbc:oracle:thin:@GL

Note:

Support for TNSNames was added in the driver release 10.2.0.1

在使用JDBC实现连接GBase8aMPP数据库时,由于GBase8aMPP数据库是分布式数据库,那么在通过JDBC实现连接高可用的情况下,还希望能够实现连接级别的负载均衡,需要如何实现呢?这就需要使用到GBase8aMPP数据库JDBC驱动自带的负载均衡功能。

如果我们希望把数据库连接请求平均分布到各个节点的上话,我们可以使用JDBC 高可用负载均衡功能。

假设有如下场景,部署有一个GBase 集群,三个节点IP如下:

192.168.1.1;192.168.1.2;192.168.1.3;

String dbUrl =

“jdbc:gbase://192.168.1.1:5258/test?user=gbase&password=gbase20110531&failoverEnable=true&hostList=192.168.1.2,192.168.1.3&gclusterId=gcl1”

failoverEnable:是否开启高可用。

hostList:集群节点的IP列表,以逗号分隔,hostList中不需要包含url中的主IP。

gclusterId:不同的gclusterId会创建不同的列表,用于区分被连接的集群,要求必须以a-z任意字符开头的可以包含a-z、0-9所有字符长度为最大为20的字符串。

高可用负载均衡功能是将url中的IP和hostList中的IP放入一个列表中,当应用获取连接的时候,JDBC会从列表表中顺序获取IP创建连接,每个IP获取一个连接,从而实现连接的负载均衡,同时,当列表中的IP不可连接时,JDBC会顺序获取列表中的下一个IP,获取连接,如果无可用连接时,将抛出异常。也就是说高可用负载均衡功能既实现了连接负载均衡功能,也实现了高可用功能。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/sjk/6669929.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-03-26
下一篇2023-03-26

发表评论

登录后才能评论

评论列表(0条)

    保存