【问题标题】:JDBC Thin connection string in Oracle uses both colon and forward slashOracle 中的 JDBC 瘦连接字符串同时使用冒号和正斜杠
【发布时间】:2017-10-08 15:09:38
【问题描述】:

我想知道在 Oracle 中建立连接 URL 时,我们能否同时使用冒号和正斜杠和 SID?

例如

jdbc:oracle:thin:@<host>:1521:<SID>
jdbc:oracle:thin:@<host>:1521/<SID>

这两个是否相同并且可以工作?

我正在构建一个适用于 Oracle RAC 和非 RAC 环境的应用程序,并且 RAC 环境支持 SERVICE NAMEforward slash 所以想检查 non RAC 环境是否支持 forward slash

对于RAC的环境URL是这样的

jdbc:oracle:thin:@<host>:1521/<SERVICENAME>

更新 这是一个不同的问题,因为我想问是否可以同时使用(:/,同时在我们称为OracleJDBCUrl 的连接字符串中使用&lt;SID&gt;

【问题讨论】:

  • @JSapkota 所以这意味着non RAC 中的 如果 SQL Developer 说连接已建立且状态为成功,我们可以同时使用冒号和正斜杠?
  • 但是,如果我尝试从 Java 连接,“/”用于服务名称,“:”用于 SID。
  • @JSapkota 在使用 时我可以使用任何东西(在冒号和斜杠之间)吗?
  • @PanagiotisKanavos 我想使用,因为我可以使用/ 连接到数据库,所以哪个是正确的,我坚持这一点。我的意思是OracleJDBCURL 的网址。

标签: oracle jdbc oracle11g


【解决方案1】:

我能够在connection URL 中使用冒号: 和正斜杠/ 作为SID,并且能够建立连接。 我认为在Oracle 11g 中我们可以做这样的事情,而对于Service Name,我们只能使用正斜杠/

【讨论】:

    【解决方案2】:

    我们建议使用如下所示的连接 URL 的长格式。

    jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(HOST=myhost)(PORT=1521)(PROTOCOL=tcp))(CONNECT_DATA=(SERVICE_NAME=myorcldbservicename)))

    查看DataSourceSampleUCPSample 以供参考。

    【讨论】:

      【解决方案3】:

      SID 和 ServiceName 都只使用“/”对我有效。我在 windows 服务器上使用 Java.sql.Connection,我不确定它是否适用于 Linux。

      jdbc:oracle:thin:@<host>:<port>/<SERVICENAME or SID>
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2011-04-22
        • 2020-08-28
        • 1970-01-01
        • 2018-02-27
        • 1970-01-01
        • 1970-01-01
        • 2021-05-02
        • 1970-01-01
        相关资源
        最近更新 更多