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!

Heterogeneous connection between Oracle and Postgres.

DanatanNov 15 2010 — edited Nov 15 2010
Hi All,

I'm trying to make an heterogeneous connection between Oracle and Postgres since few days but i still having this error : "lost RPC connection".

First of all : I'm using Windows 7, Oracle 10g and PostgreSQL 8.4.

I have done the following operations :

1) Create a System DNS named "PG". (Test connection is OK)

2) Create the file "initPG.ora" in "$ORACLE_HOME/hs/admin" :
# This is a sample agent init file that contains the HS parameters that are
# needed for an ODBC Agent.

#
# HS init parameters
#
HS_FDS_CONNECT_INFO = PG
HS_FDS_TRACE_LEVEL = ON

#
# Environment variables required for the non-Oracle system
#
#set <envvar>=<value>

3) Configure the file "listener.ora" (in "$ORACLE_HOME/NETWORK/ADMIN") :
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = CLRExtProc)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = extproc)
)
(SID_DESC =
(SID_NAME = PG)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\10.2.0\server)
(PROGRAM = hsodbc)
)
)

LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
(ADDRESS = (PROTOCOL = TCP)(HOST = Cédric-PC)(PORT = 1521))
)
)

DEFAULT_SERVICE_LISTENER = (XE)

4) Configure the file "tnsnames.ora" (in "$ORACLE_HOME/NETWORK/ADMIN") :
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = Cédric-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
PG =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = tcp)(HOST = Cédric-PC)(PORT = 1521))
(CONNECT_DATA =
(SERVICE_NAME = PG)
(HS = OK)
)
)

EXTPROC_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = PLSExtProc)
(PRESENTATION = RO)
)
)

ORACLR_CONNECTION_DATA =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC_FOR_XE))
)
(CONNECT_DATA =
(SID = CLRExtProc)
(PRESENTATION = RO)
)
)

5) Finally, i create my DB-Link and test it :
CREATE DATABASE LINK "CENTRALE_POSTGRES" CONNECT TO "user_login" IDENTIFIED BY "user_password" USING 'PG';

SELECT * FROM "dual"@CENTRALE_POSTGRES;

I got this error :
ORA-03135 : lost RPC connection.

As you can see, i have activated the trace level (HS_FDS_TRACE_LEVEL = ON), but the directory "$ORACLE_HOME/NETWORK/trace" still empty.

Any ideas ?

Regards
This post has been answered by Kgronau-Oracle on Nov 15 2010
Jump to Answer
Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Dec 13 2010
Added on Nov 15 2010
1 comment
505 views