为什么 sqldeveloper 无法从我的笔记本电脑连接 19c Oracle 数据库到服务器?

问题描述 投票:0回答:1

我有一个在 Oracle Linux VM 7.9 上运行的 Oracle 19c 数据库。我还在虚拟机和笔记本电脑上安装了 sql-developer。当我尝试从虚拟机与本地主机连接时,连接成功。但是,当我尝试从我的笔记本电脑并使用虚拟机 IP 或主机名连接时,会出现错误,拒绝连接

`Status : Failure -Test failed: IO Error: The Network Adapter could not establish the connection (CONNECTION_ID=LMgiRbjdS46VB9S2Ywm4RQ==)`

为了测试它,我在 VM sql-developer 中使用 VM 的 IP 地址和主机名,连接再次拒绝。我已更新我的 tnsnames.ora 文件,如下所示。

`# tnsnames.ora Network Configuration File: /u01/app/oracle/product/19.3/db_home/network/admin/tnsnames.ora
# Generated by Oracle configuration tools.

LISTENER_ORCL =
  (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
  (ADDRESS = (PROTOCOL = TCP)(HOST = 123.123.123.104)(PORT = 1521))

ORCL =
  (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
    (ADDRESS = (PROTOCOL = TCP)(HOST = 123.123.123.104)(PORT = 1521))
    (CONNECT_DATA =
      (SERVER = DEDICATED)
      (SERVICE_NAME = orcl)
    )
  )`

我还尝试使用 0.0.0.0 而不是 IP,因此它应该接受所有连接。

从我的笔记本电脑 Ping 到虚拟机成功,我也可以通过笔记本电脑上的 SSH 连接连接到虚拟机。我已添加端口 1521 以允许连接,并通过禁用防火墙进行测试。

每次我收到此错误时。

任何帮助和建议都会很棒,非常感谢您的支持。

oracle oracle-sqldeveloper portforwarding oracle19c
1个回答
0
投票

我假设您的笔记本电脑无法访问虚拟机中的任何网络服务。因为笔记本电脑无法访问VM开放端口。

如果您使用的是 Oracle VirtualBox:

  1. 添加端口转发如下图:

enter image description here

  1. 重启虚拟机使网络配置生效

  2. 来自您的笔记本电脑用户 CLI 网络诊断工具(例如:

    curl
    telnet
    ncat
    、...)。尝试达到
    localhost:1521

© www.soinside.com 2019 - 2024. All rights reserved.