ORA-28500 connection from ORACLE to non-Oracle system.
Applies to: Oracle Database Gateway, Oracle Database Link, Microsoft SQL Server
Standard.
Date created: October 9, 2019.
Problem Description.
Trying to create an Oracle dblink (Database Link) using Oracle Database
Gateway to connect an Oracle database server to a database located on a
Microsoft SQL Server instance, we decided to test using below statement:
SQL> select sysdate from dual@DOMINIOCOOP;
select sysdate from dual@DOMINIOCOOP
But the test was not successful, and we received the following error:
ERROR at line 1:
ORA-28500: connection from ORACLE to a non-Oracle system returned this message:
[Oracle][ODBC SQL Server Driver][libssclient24]General network error. Check
your network documentation. {08001,NativeErr = 11}[Oracle][ODBC SQL Server
Driver][libssclient24]ConnectionOpen (()). {01000,NativeErr = 11}[Oracle][ODBC
SQL Server Driver]Invalid connection string attribute {01S00}
ORA-02063: preceding 2 lines from DOMINIOCOOP
Cause.
Looking at the parameters of the dblink I found that the port number was wrong
as shown below:
[oracle@alberto admin]$ more initPRUEBA002TEST.ora
# This is a customized agent init file that contains the HS parameters
# that are needed for the Database Gateway for Microsoft SQL Server
#
# HS init parameters
#
HS_FDS_CONNECT_INFO=10.0.0.188:1435//PRUEBA002
# alternate connect format is hostname/serverinstance/databasename
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
[oracle@alberto admin]$
Solution.
The SQL Server instance was a default instance, thus the tcp port is 1433.
Parameters of the dblink should be modified as shown below:
[oracle@alberto admin]$ more initPRUEBA002TEST.ora
# This is a customized agent init file that contains the HS parameters
# that are needed for the Database Gateway for Microsoft SQL Server
#
# HS init parameters
#
HS_FDS_CONNECT_INFO=10.0.0.188:1433//PRUEBA002
# alternate connect format is hostname/serverinstance/databasename
HS_FDS_TRACE_LEVEL=OFF
HS_FDS_RECOVERY_ACCOUNT=RECOVER
HS_FDS_RECOVERY_PWD=RECOVER
[oracle@alberto admin]$