我AM_ADMIN
通过 SQL Developer 创建了一个数据库链接:
我正在尝试检查它是否是有效的数据库链接。当我从 SQL Developer 向导测试它时,它是成功的。但是当我使用以下命令时:
SELECT * FROM dual@AM_ADMIN
我收到错误:
ORA-02019: 未找到远程数据库的连接描述
我该如何纠正这个错误?
我AM_ADMIN
通过 SQL Developer 创建了一个数据库链接:
我正在尝试检查它是否是有效的数据库链接。当我从 SQL Developer 向导测试它时,它是成功的。但是当我使用以下命令时:
SELECT * FROM dual@AM_ADMIN
我收到错误:
ORA-02019: 未找到远程数据库的连接描述
我该如何纠正这个错误?
根据您的屏幕截图,您将数据库链接创建为AM_ADMIN.INT.xxx
. 您在没有域的情况下调用它,就像@AM_ADMIN
. 除非您有一个sqlnet.ora
which 定义names.default_domain
了相同的域值(并且配置了 SQL Developer 以识别它),否则您在使用它时需要完全质量链接名称:
SELECT * FROM dual@AM_ADMIN.INT.xxx
当数据库链接未设为 PUBLIC 且创建链接的用户与尝试使用链接的用户不同时,将发生此错误。例如,以 SYS 用户身份创建链接,然后尝试以 AM_ADMIN 用户身份使用该链接。
在这种情况下,要么将链接设为 PUBLIC(然后所有用户都可以访问),要么授予 AM_ADMIN 用户创建数据库链接的权限。
我有同样的问题,我发现这是一个愚蠢的错误(Description = (... HOST = !...)
。在USING
子句中创建数据库链接时,您应该:
HOST
如果您使用 IP 地址,请使用关键字HOSTNAME
如果您使用名称,请使用关键字我只是想分享它,因为我花了半天时间试图弄清楚它,但我找不到任何关于它的信息......