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!

Connect Oracle to Postgres with UTF8

user478514Jun 11 2013 — edited Jul 3 2013

Hello all.

I want to connect a Oracle 10gR2 in AL32UTF8 database to a Postgres 9.2 en_US.UTF-8 database.

Everything works if I have HS_LANGUAGE = AMERICAN_AMERICA.WE8ISO8859P1 or HS_LANGUAGE = american_america.we8mswin1252. Not everything... accentuated characters of my main language (Portuguese) don't get visible.

If I set it to AMERICAN_AMERICA.AL32UTF8, i get this message:

ERROR at line 1:

ORA-28500: connection from ORACLE to a non-Oracle system returned this message:

c

Here are my configuration files:

odbc.ini:

[MoodlePostgres]

Description     = Moodle Postgres DB

Driver          = /usr/pgsql-9.2/lib/psqlodbcw.so

Server          = ifbBDPGMoodle

Database        = webbanca3

LogonID         =

Password        =

Port            = 5432

Socket          =

Option          =

Stmt            =

QuotedId    = YES

CHARSET     = en_US.UTF-8

[ODBC Data Sources]

MoodlePostgres = PostgreSQL

odbcinst.ini:

[PostgreSQL]

Description    = ODBC for PostgreSQL

Driver        = /usr/pgsql-9.2/lib/psqlodbcw.so

Setup        = /usr/lib64/libodbcpsqlS.so

Driver64    = /usr/pgsql-9.2/lib/psqlodbcw.so

Setup64        = /usr/lib64/libodbcpsqlS.so

FileUsage    = 1

tnsnames.ora:

webbanca3=

    (DESCRIPTION=

        (ADDRESS=

            (PROTOCOL=TCP)

            (HOST=172.18.1.34)

            (PORT=1521)

        )

        (CONNECT_DATA=

            (SID=webbanca3)

        )

        (HS=OK)

    )

listener.ora:

LISTENER =

(ADDRESS_LIST=

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

)

SID_LIST_LISTENER=

  (SID_LIST=

      (SID_DESC=

         (SID_NAME=webbanca3)

         (ORACLE_HOME=/home/moodlepostgres/product/11.2.0/tg_1)

         (PROGRAM=dg4odbc)

     (ENVS=LD_LIBRARY_PATH=/usr/pgsql-9.2/lib:/home/moodlepostgres/product/11.2.0/tg_1/lib)

      )

  )

#CONNECT_TIMEOUT_LISTENER = 0

initi<sid>.ora:

#

# HS init parameters

#

HS_FDS_CONNECT_INFO = MoodlePostgres

#HS_FDS_TRACE_LEVEL = 0

HS_FDS_SHAREABLE_NAME = /usr/pgsql-9.2/lib/psqlodbc.so

#HS_FDS_SHAREABLE_NAME = /usr/pgsql-9.2/lib/psqlodbcw.so

HS_FDS_SUPPORT_STATISTICS = FALSE

#HS_LANGUAGE = american_america.we8mswin1252  # WORKS ... kinda... :-)

HS_LANGUAGE = american_america.al32utf8 # DOESN'T WORK

HS_KEEP_REMOTE_COLUMN_SIZE = ALL

#

# ODBC specific environment variables

#

set ODBCINI=/usr/local/etc/odbc.ini

set ODBCINST=/usr/local/etc/odbcinst.ini

#

# Environment variables required for the non-Oracle system

#

#set <envvar>=<value>

The result of odbcinst -j is:

unixODBC 2.3.1

DRIVERS............: /usr/local/etc/odbcinst.ini

SYSTEM DATA SOURCES: /usr/local/etc/odbc.ini

FILE DATA SOURCES..: /usr/local/etc/ODBCDataSources

USER DATA SOURCES..: /usr/loca/etc/odbc.ini

SQLULEN Size.......: 8

SQLLEN Size........: 8

SQLSETPOSIROW Size.: 8

I'm running on Oracle Linux 6

Thank you.

Comments
Locked Post
New comments cannot be posted to this locked post.
Post Details
Locked on Jul 31 2013
Added on Jun 11 2013
13 comments
10,518 views