Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/36.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 节点OracleDB连接在远程服务器中不工作_Node.js_Database_Oracle_Express_Connection - Fatal编程技术网

Node.js 节点OracleDB连接在远程服务器中不工作

Node.js 节点OracleDB连接在远程服务器中不工作,node.js,database,oracle,express,connection,Node.js,Database,Oracle,Express,Connection,我正在使用oracledb和Node和ExpressJS开发我的应用程序。在localhost中,我的连接没有问题,但是我需要在一个服务器中配置项目,该服务器连接到另一个服务器中的数据库。当我这样做时,我会得到错误(从西班牙语翻译): 错误:错误:ORA-12154:TNS:无法解析指定的连接标识符 这是我的配置代码: const oracleDbConfig = { user: "myUser", password: "myPassword", connectStrin

我正在使用oracledb和Node和ExpressJS开发我的应用程序。在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",
}
请帮助我了解错误。

疑难解答:

  • 网络检查:您的数据库节点是否可访问<代码>挖掘、ping、主机、nslookup
  • FirewallCheck:能否连接到dbnode oracle侦听器<代码>nc-vz dbnode 1521
  • ServiceCheck:数据库服务
    myDatabase
    是否在dbnode的侦听器中公开<代码>数据库节点>$lsnrctl状态| grep myDatabase
  • 如果您可以将这些树点标记为成功,您应该能够连接


    祝您好运。

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

    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)))"
    }
    
    这两种方法都是有效的,但我只使用了这个