【问题标题】:How to connect to Oracle DB using Process arguments?如何使用 Process 参数连接到 Oracle DB?
【发布时间】:2020-07-29 20:53:27
【问题描述】:

我是 Oracle 新手,遇到一个问题将近一周,我正在尝试通过 TOAD 连接到 Oracle 数据库,我可以使用 toad 应用程序本身通过 SID 和服务名称直接登录。

但我需要为 toad 使用自定义启动器,它从直接连接到 OracleDB 的命令行启动应用程序。

我可以通过 SID

使用以下命令连接到 Oracle DB

C:\toad.exe -c 用户名/Passwd@host:port/SID(完美运行) 上述命令启动 TOAD 应用程序并通过 SID 将我连接到 Oracle DB。

但是当我尝试传递数据库 Servicename 而不是 SID 时,它给了我以下错误,我做了很多研发但没有相关的解决方案。

ora-12505 tns 侦听器当前不知道连接描述符中给出的 SID

与数据库团队讨论

据他们说,我与 DB 团队讨论过 Toad.exe 不接受“ServiceName”作为参数,并且根据他们的说法,问题不在他们的最后,因为 toad 应用程序本身连接到数据库通过 SID 和服务名称。

请帮忙。

【问题讨论】:

  • 正如@Sam 回答中所指出的,从您的语法看来,您已经通过服务名称进行连接。这将是罕见的数据库,其中至少一个服务名称与 SID 不同。
  • @EdStevens 我能够通过 SID 进行连接,在我的情况下,他们提供了一个 SID 和一个服务名称服务名称是 MOCK,而 SID 是 MOCK1 .. 我能够通过 SID 进行连接但不是给定的服务名称。

标签: database oracle toad toad-data-point toad-scripting


【解决方案1】:

您列出的语法 user/pass@host:port/service 仅用于服务连接。 对于 SID 连接,它是 user/pass@host:port:SID

您可能已经使用服务名称进行连接。当然,您可以要求 DBA 提供数据库 SID 和数据库中的参数 services_names 列表。

【讨论】:

  • Sam 这是 SID 我已经仔细检查过了,DBA 为我提供了一个 SID 和一个服务名称,我能够通过带有 SID 和服务名称的 toad 连接到数据库,我正面临这个问题仅当尝试从命令行启动连接时。当我在同一命令中使用 SID 时,它连接但不使用服务名称
  • 通常Oracle DB有多种服务,SID主要是服务的一部分。你能检查你的参数 service_names 吗?
【解决方案2】:

问题已通过使用以下参数启动 toad 得到解决

C:\toad.exe -c user/password@service_name

【讨论】:

    猜你喜欢
    • 2023-04-04
    • 2016-03-11
    • 2021-10-21
    • 1970-01-01
    • 2016-06-17
    • 1970-01-01
    • 2018-07-18
    • 2016-06-23
    • 2010-12-22
    相关资源
    最近更新 更多