oracle - 能够通过 localhost 而不是通过 IP 地址访问 Oracle 数据库

标签 oracle oracle11g database-connection oracle12c

我已经安装了 Oracle 11g,出于测试目的,我使用编辑器(称为 DBeaver)连接到数据库。 当主机名提供为 localhost 时,它会连接。但是当主机名提供为系统的 IP 时,编辑器无法连接并显示以下消息。

IO Error: The Network Adapter could not establish the connection
  The Network Adapter could not establish the connection
    java.net.ConnectException: Connection refused: connect

我已经尝试从

更改 listener.ora
LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
  )

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.140.0.3)(PORT = 1521))
    )
  )

在这里,我将 localhost 替换为 IP,即 10.140.0.3。 但至今无法连接。 有人可以分享一下这方面的经验吗?

最佳答案

您的 listener.ora 条目不正确。应该如下所示。

LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    )
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 10.140.0.3)(PORT = 1521))
    )
  )

为避免与手动编辑相关的错误,请使用网络管理器并从那里添加地址。 检查以下屏幕截图以进行 listener.ora 文件相关的更改。

Open Oracle Net Manager

Add IP address to the Listener

更改完成后,不要忘记从 Oracle Net Manager 中保存!

关于oracle - 能够通过 localhost 而不是通过 IP 地址访问 Oracle 数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38118071/

相关文章:

php - 在每个页面的页脚中使用 mysqli_close 有什么缺点吗?

mysql - Microsoft SQL 与 mySQL 的连接

oracle - JDBC 批量插入 Oracle 不工作

SQL 数据截断 : Incorrect date value

oracle - SQL Developer 连接问题

mysql - 尝试将 Jira(docker)连接到 Mysql(非 docker)5.6.44 但连接被拒绝

sql - 计算整个表的哈希值的最快方法

Oracle - 使用 DBMS_MVIEW.REFRESH 刷新 'REFRESH FORCE ON DEMAND' View 时会发生什么

oracle - 如何将 Oracle SQLdeveloper 与 HSQL/Hypersonic DB 的 JDBC 驱动程序一起使用

sql - Group By 语句中的重复列