19c中新增的 v$services可以查询各PDB对应的服务名,根据此服务名去写JDBC的连接参数。
而非19c中常用的v$database视图显示的是CDB的库名。
还有 show paramerter service_name
在JDBC的连接串三种方式之一:
jdbc:oracle:thin:@//:/ServiceName
此处的ServiceName笔者认为应该从 v$services中获取。
在使用SID连接时
jdbc:oracle:thin:@::
在11g的RAC中是可以选择一个SID连接的。但是在19c可插拔式数据库中,v$instance显示的是不能用的。
11g环境下
Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.4.0
Connected as SYS
SQL> show parameter service_name;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
service_names string qsrac
SQL>
select t.name from v$database t
QSRAC
select t.instance_name from v$instance t
qsrac2
使用PLSQL Developer连接时参数为:
IP:port/service_names
综上:1、19c可插拔式数据库中。JDBC连接参数从v
s
e
r
v
i
c
e
s
中
取
,
使
用
j
d
b
c
:
o
r
a
c
l
e
:
t
h
i
n
:
@
/
/
<
h
o
s
t
>
:
<
p
o
r
t
>
/
S
e
r
v
i
c
e
N
a
m
e
作
为
连
接
方
式
。
2
、
11
g
环
境
中
,
既
可
以
使
用
j
d
b
c
:
o
r
a
c
l
e
:
t
h
i
n
:
@
/
/
<
h
o
s
t
>
:
<
p
o
r
t
>
/
S
e
r
v
i
c
e
N
a
m
e
也
可
以
使
用
j
d
b
c
:
o
r
a
c
l
e
:
t
h
i
n
:
@
<
h
o
s
t
>
:
<
p
o
r
t
>
:
<
S
I
D
>
。
且
S
e
r
v
i
c
e
N
a
m
e
和
S
I
D
可
通
过
s
h
o
w
p
a
r
a
m
e
t
e
r
s
e
r
v
i
c
e
n
a
m
e
和
s
e
l
e
c
t
t
.
i
n
s
t
a
n
c
e
n
a
m
e
f
r
o
m
v
services中取,使用jdbc:oracle:thin:@//<host>:<port>/ServiceName 作为连接方式。 2、11g环境中,既可以使用jdbc:oracle:thin:@//<host>:<port>/ServiceName 也可以使用jdbc:oracle:thin:@<host>:<port>:<SID>。 且ServiceName和SID可通过show parameter service_name和select t.instance_name from v
services中取,使用jdbc:oracle:thin:@//<host>:<port>/ServiceName作为连接方式。2、11g环境中,既可以使用jdbc:oracle:thin:@//<host>:<port>/ServiceName也可以使用jdbc:oracle:thin:@<host>:<port>:<SID>。且ServiceName和SID可通过showparameterservicename和selectt.instancenamefromvinstance 获取
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)