【问题标题】:Node OracleDB connection not working in remote server节点 OracleDB 连接在远程服务器中不起作用
【发布时间】:2023-03-12 05:45:01
【问题描述】:

我正在使用带有 Node 和 ExpressJS 的 oracledb 来开发我的应用程序。在 localhost 中,我的连接没有问题,但是我需要在连接到它在其他服务器中的数据库的服务器中配置项目。当我这样做时,我收到错误(从西班牙语翻译):

错误:错误:ORA-12154:TNS:无法解析指定的连接标识符。

这是我的配置代码:

const oracleDbConfig = {
    user: "myUser",
    password: "myPassword",
    connectString: "192.168.6.129:1521/myDatabase",
}

另外,如果我在数据库服务器中安装我的项目并使用 localhost 运行相同的配置,它可以正常工作:

const oracleDbConfig = {
    user: "myUser",
    password: "myPassword",
    connectString: "localhost:1521/myDatabase",
}

请帮我理解错误。

【问题讨论】:

标签: node.js database oracle express connection


【解决方案1】:

疑难解答:

  1. NetworkCheck:您的 dbnode 是否可访问? :dig,ping,host,nslookup
  2. FirewallCheck:您可以连接到 dbnode oracle 侦听器吗? nc -vz dbnode 1521
  3. ServiceCheck:数据库服务myDatabase 是否暴露在dbnode 的监听器中? dbnode>$lsnrctl status | grep myDatabase

如果您可以将这些树点标记为成功,则应该可以连接。

祝你好运。

【讨论】:

    【解决方案2】:

    我解决了更改连接字符串的问题,如文档所述:

    const oracleDbConfig = {
        user: "myUser",
        password: "myPassword",
        connectString: "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=192.168.6.129)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=myDatabase)))"
    }
    

    这两种方法都有效,但我只是使它适用于此。

    【讨论】:

      猜你喜欢
      • 2022-11-15
      • 2021-03-30
      • 2017-04-23
      • 1970-01-01
      • 2017-10-29
      • 1970-01-01
      • 2012-03-07
      • 1970-01-01
      • 2020-08-10
      相关资源
      最近更新 更多