节点 OracleDB 连接在远程服务器中不工作
Node OracleDB connection not working in remote server
我将 oracledb 与 Node 和 ExpressJS 结合使用来开发我的应用程序。在 localhost 中,我的连接没有问题,但我需要在连接到其他服务器中的数据库的服务器中配置项目。当我这样做时,出现错误(翻译自西班牙语):
Error: Error: ORA-12154: TNS: the specified connection identifier could not be resolved.
这是我的配置代码:
const oracleDbConfig = {
user: "myUser",
password: "myPassword",
connectString: "192.168.6.129:1521/myDatabase",
}
此外,如果我在数据库服务器中安装我的项目,并且我 运行 使用本地主机进行相同的配置,它可以正常工作:
const oracleDbConfig = {
user: "myUser",
password: "myPassword",
connectString: "localhost:1521/myDatabase",
}
请帮助我理解错误。
疑难解答:
- NetworkCheck:您的数据库节点是否可达? :
dig,ping,host,nslookup
- FirewallCheck:您可以连接到 dbnode oracle 侦听器吗?
nc -vz dbnode 1521
- ServiceCheck: 数据库服务
myDatabase
是否暴露在 dbnode 的侦听器中? dbnode>$lsnrctl status | 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)))"
}
这两种方式都有效,但我只用了这个。
我将 oracledb 与 Node 和 ExpressJS 结合使用来开发我的应用程序。在 localhost 中,我的连接没有问题,但我需要在连接到其他服务器中的数据库的服务器中配置项目。当我这样做时,出现错误(翻译自西班牙语):
Error: Error: ORA-12154: TNS: the specified connection identifier could not be resolved.
这是我的配置代码:
const oracleDbConfig = {
user: "myUser",
password: "myPassword",
connectString: "192.168.6.129:1521/myDatabase",
}
此外,如果我在数据库服务器中安装我的项目,并且我 运行 使用本地主机进行相同的配置,它可以正常工作:
const oracleDbConfig = {
user: "myUser",
password: "myPassword",
connectString: "localhost:1521/myDatabase",
}
请帮助我理解错误。
疑难解答:
- NetworkCheck:您的数据库节点是否可达? :
dig,ping,host,nslookup
- FirewallCheck:您可以连接到 dbnode oracle 侦听器吗?
nc -vz dbnode 1521
- ServiceCheck: 数据库服务
myDatabase
是否暴露在 dbnode 的侦听器中?dbnode>$lsnrctl status | 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)))"
}
这两种方式都有效,但我只用了这个。