sql之使用 Oracle Sql developer(远程)连接到 oracle 12c

lhb25 阅读:13 2024-11-01 17:39:52 评论:0

我一直在尝试使用 Oracle SQL Developer 远程连接到 Oracle 12c。它在连接到服务器期间显示以下错误:

 Status : Failure -Test failed: IO Error: The Network Adapter could not establish the connection  

我确实可以连接到服务器上的oracle数据库,但问题是关于远程连接到这个服务器(数据库)

我的listener.ora的内容是:

SID_LIST_LISTENER = 
(SID_LIST = 
(SID_DESC = 
  (SID_NAME = CLRExtProc) 
  (ORACLE_HOME = D:\app\ORCLNEWUSER\product\12.1.0\dbhome_1) 
  (PROGRAM = extproc) 
  (ENVS =  "EXTPROC_DLLS=ONLY:d:\app\ORCLNEWUSER\product\12.1.0\dbhome_1\bin\oraclr12.dll") 
) 
) 
 
LISTENER = 
(DESCRIPTION_LIST = 
(DESCRIPTION =       
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))      
) 
) 

请您参考如下方法:

你的 listener.ora 说它只在 localhost (127.0.0.1) 上监听,所以除了服务器之外,任何地方都无法连接;服务器外部 IP 地址上的端口 1521 上没有任何监听。您可以使用 lsnrctl statusnetstat -ano | 验证这一点找到“1521”

您需要修改 listener.ora 以监听您服务器的主机名,或者如果它不能解析为正确的 IP,外部 IP 地址本身 - 您的“有效 IP 地址”正在尝试从 SQL Developer 连接到:

LISTENER = 
(DESCRIPTION_LIST = 
(DESCRIPTION =       
  (ADDRESS = (PROTOCOL = TCP)(HOST = my_hostname_or_ip)(PORT = 1521))      
) 
) 

您可能还需要检查您的数据库是否能够成功注册。在您进行更改并重新启动监听器之前和之后,我会验证它是否包含在 lsnctrl services 中。如果重启后它没有出现,并且 alter system register 没有让它出现,那么你可能需要更改 local_listener 数据库参数来告诉它地址和它应该注册的端口。这确实是一个单独的问题,但可以根据此更改进行后续处理; there's an example here如果确实如此,这可能会有所帮助。


标签:oracle
声明

1.本站遵循行业规范,任何转载的稿件都会明确标注作者和来源;2.本站的原创文章,请转载时务必注明文章作者和来源,不尊重原创的行为我们将追究责任;3.作者投稿可能会经我们编辑修改或补充。

关注我们

一个IT知识分享的公众号