Skip to Main Content

Oracle Database Discussions

Announcement

For appeals, questions and feedback about Oracle Forums, please email oracle-forums-moderators_us@oracle.com. Technical questions should be asked in the appropriate category. Thank you!

Need help trouble shooting Database Gateway for MS SQL Server setup, getting ORA-28546 error

ninterxzSep 10 2013 — edited Sep 11 2013

Dear All,

I am trying to setup Oracle Database Gateway for MS SQL Server(I don't have admin access to the MS SQL Server).  When I try to test the dblink connection, I get the following error.

I issued select * from dual@xyz;

ORA-28546: connection initialization failed, probable Net8 admin error

ORA-28511: lost RPC connection to heterogeneous remote agent using SID=(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521))(CONNECT_DATA=(SID=dg4msql)))

ORA-02063: preceding 2 lines from xyz

28546. 0000 -  "connection initialization failed, probable Net8 admin error"

My setup is the following.

1. Oracle 11gR2 running on Oracle Linux 6, the same version gateway is installed on the same server, but different home directory.

2. Oracle DB home directory is /u01/app/oracle/product/11.2.0/dbhome_1, gateway home directory is /u01/gateway.

3. I use the same listener.ora file for both the db and the gateway.

4. the contents of my listener.ora, tnsnames.ora and the initdg4msql.ora are below.

/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

LISTENER =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

      #(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1522))

      (ADDRESS = (PROTOCOL = TCP)(HOST = db.abc.com.tw)(PORT = 1522))

    )

  )

mssql =

  (DESCRIPTION_LIST =

    (DESCRIPTION =

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

    )

  )

SID_LIST_LISTENER =

  (SID_LIST =

    (SID_DESC =

      (GLOBAL_DBNAME=db.abc.com.tw)

      (ORACLE_HOME=/u01/app/oracle/product/11.2.0/dbhome_1)

      (SID_NAME=orcl)

    )

  )

SID_LIST_mssql =

  (SID_LIST =

    (SID_DESC =

      (SID_NAME=dg4msql)

      (ENVS=LD_LIBRARY_PATH=/u01/gateway/dg4msql/driver/lib:/u01/gateway/lib)

      (PROGRAM_NAME=/u01/gateway/bin/dg4msql)

    )

  )

/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/tnsnames.ora

LISTENER_ORCL =

  (ADDRESS = (PROTOCOL = TCP)(HOST = db.abc.com.tw)(PORT = 1522))

ORCL =

  (DESCRIPTION =

    (ADDRESS = (PROTOCOL = TCP)(HOST = db.abc.com.tw)(PORT = 1522))

    (CONNECT_DATA =

      (SERVER = DEDICATED)

      (SERVICE_NAME = orcl.abc.com.tw)

    )

  )

dg4msql  =

  (DESCRIPTION=

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

    (CONNECT_DATA=(SID=dg4msql))

    (HS=OK)

  )

/u01/gateway/dg4msql/admin/initdg4msql.ora

HS_FDS_CONNECT_INFO=[192.168.0.1]:1433//XIETEST

# alternate connect format is hostname/serverinstance/databasename

HS_FDS_TRACE_LEVEL=255

HS_FDS_RECOVERY_ACCOUNT=RECOVER

HS_FDS_RECOVERY_PWD=RECOVER

dblink was created using statement below.

CREATE DATABASE LINK "xyz.abc.COM.TW"

CONNECT TO SA IDENTIFIED BY

USING 'dg4msql';

Couple more things, that I have done to check the work above.

[oracle@db admin]$ ping 192.168.0.1

PING 192.168.0.1 (192.168.0.1) 56(84) bytes of data.

64 bytes from 192.168.0.1: icmp_seq=1 ttl=61 time=7.61 ms

64 bytes from 192.168.0.1: icmp_seq=2 ttl=61 time=7.41 ms

^C

--- 192.168.0.1 ping statistics ---

2 packets transmitted, 2 received, 0% packet loss, time 1818ms

rtt min/avg/max/mdev = 7.417/7.516/7.615/0.099 ms

[oracle@db admin]$ tnsping dg4msql

TNS Ping Utility for Linux: Version 11.2.0.1.0 - Production on 11-SEP-2013 10:53:11

Copyright (c) 1997, 2009, Oracle.  All rights reserved.

Used parameter files:

/u01/app/oracle/product/11.2.0/dbhome_1/network/admin/sqlnet.ora

Used TNSNAMES adapter to resolve the alias

Attempting to contact (DESCRIPTION= (ADDRESS=(PROTOCOL=TCP) (HOST=localhost)(PORT = 1521)) (CONNECT_DATA=(SID=dg4msql)) (HS=OK))

OK (0 msec)

[oracle@db admin]$ lsnrctl status mssql

LSNRCTL for Linux: Version 11.2.0.1.0 - Production on 11-SEP-2013 10:54:23

Copyright (c) 1991, 2009, Oracle.  All rights reserved.

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=localhost)(PORT=1521)))

STATUS of the LISTENER

------------------------

Alias                     mssql

Version                   TNSLSNR for Linux: Version 11.2.0.1.0 - Production

Start Date                11-SEP-2013 10:09:46

Uptime                    0 days 0 hr. 44 min. 37 sec

Trace Level               off

Security                  ON: Local OS Authentication

SNMP                      OFF

Listener Parameter File   /u01/app/oracle/product/11.2.0/dbhome_1/network/admin/listener.ora

Listener Log File         /u01/app/oracle/diag/tnslsnr/db/mssql/alert/log.xml

Listening Endpoints Summary...

  (DESCRIPTION=(ADDRESS=(PROTOCOL=tcp)(HOST=127.0.0.1)(PORT=1521)))

Services Summary...

Service "dg4msql" has 1 instance(s).

  Instance "dg4msql", status UNKNOWN, has 1 handler(s) for this service...

The command completed successfully

Obviously, I would like to get this setup to work, but I also have couple other questions regarding this setup.

1. When installing the gateway, it asks to run the root.sh script.  the root.sh script as for the following.

Enter the full pathname of the local bin directory: [/usr/local/bin]:

The file "dbhome" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]: n

The file "oraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]: n

The file "coraenv" already exists in /usr/local/bin.  Overwrite it? (y/n)

[n]: n

is the above answer correct?

Thanks for reading.

This post has been answered by Kgronau-Oracle on Sep 11 2013
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Oct 9 2013
Added on Sep 10 2013
10 comments
6,134 views