尝试在同一服务器上的两个数据库之间创建数据库链接时,我确实遇到了Oracle数据库11g的问题 . 我正在使用SQL Developer 4.1.3.20,我使用的查询如下所示:

CREATE DATABASE LINK TestKgu
CONNECT TO sys
IDENTIFIED BY *******
--USING '//10.0.9.8:1521/TCDB';
USING '(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.0.9.8)(PORT=1521))(CONNECT_DATA=(SID=TCDB)))';

COMMIT;

select * from v$version@TestKgu;

DROP DATABASE LINK TestKgu;

在Scriptout上我收到以下消息:

数据库链接TESTKGU已创建 . 提交完了 . 数据库链接TESTKGU已删除 .

相反,结果输出显示以下消息:

ORA-12170:TNS:连接超时发生00000 - “TNS:发生连接超时”*原因:服务器关闭,因为连接 Build 或与客户端的通信未能在指定的时间间隔内完成 . 这可能是网络或系统延迟的结果;或者这可能表示恶意客户端试图在服务器上造成拒绝服务攻击 . *操作:如果由于网络或系统速度较慢而发生错误,请将sqlnet.ora中的一个或所有参数SQLNET.INBOUND_CONNECT_TIMEOUT,SQLNET.SEND_TIMEOUT,SQLNET.RECV_TIMEOUT重新配置为较大的值 . 如果怀疑是恶意客户端,请使用sqlnet.log中的地址来标识源并限制访问 . 请注意,记录的地址可能不可靠,因为它们可以伪造(例如在TCP / IP中) . Fehler排队:9栏:25

用户具有CREATE DATABASE LINK权限,并且可以在SQL Developer中打开目标数据库,也可以在目标数据库上执行查询 .

两个数据库都具有相同的版本:

Oracle Database 11g企业版11.2.0.4.0版 - 64位 生产环境 PL / SQL版本11.2.0.4.0 - 生产环境 “CORE 11.2.0.4.0 生产环境 ”64位Windows的TNS:版本11.2.0.4.0 - 生产环境 NLSRTL版本11.2.0.4.0 - 生产环境

是否有方法检查数据库链接是否可以正确连接到目标数据库,并在链接无法连接时给出错误消息?