Solved

ORA-28545: error diagnosed by Net8 when connecting to an agent

Posted on 2009-04-03
12
5,772 Views
Last Modified: 2013-12-18
I am trying to query SQL Server from a 10.2.0.4 instance.  64-bit Oracle 10.2.0.4 is installed on Red Hat 4.  32-bit unixODBC and freetds are installed on the box as well.  I can use isql to query the SQL Server database, so I assume that means the odbc.ini, odbcinst.ini and freetds.conf are correct.

I have created the init.ora file in the $OH/hs/admin using several examples online.  A seperate listener is configured, and a tns entry is in place.  I can tnsping the entry.  I have created a dblink to use the HS piece.  When I try to query I get:

SQL> select * from sys.databases@dhole;
select * from sys.databases@dhole
                            *
ERROR at line 1:
ORA-28545: error diagnosed by Net8 when connecting to an agent
Unable to retrieve text of NETWORK/NCR message 65535
ORA-02063: preceding 2 lines from DHOLE

Any suguestions on where to look?
0
Comment
Question by:mjblake
12 Comments
 
LVL 13

Expert Comment

by:anand_2000v
Comment Utility
Please upload your listener.ora and tnsnames.ora file....
Sometimes a small error in these files can cause the error that you have mentioned.
0
 
LVL 13

Expert Comment

by:anand_2000v
Comment Utility
Additional info:
In doc 264567.1 Oracle says "Please pay attention: Currently (up to 10gR2) HDOSBC is only ported to Linux x86; Not to Linux x86-64 bit."

Please check with Oracle whether an enhancement is available or try to go in for 32 bit to resolve the error that you are facing.
0
 
LVL 1

Author Comment

by:mjblake
Comment Utility
$ file hsodbc
hsodbc: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped
[ oracle@sifaka3xb.rjf.com : /opt/oracle/product/10.2.0/db_1/bin ]

# copyright (c) 1997 by the Oracle Corporation # # NAME

#   listener.ora

# FUNCTION

#   Network Listener startup parameter file example

# NOTES

#   This file contains all the parameters for listener.ora,

#   and could be used to configure the listener by uncommenting

#   and changing values.  Multiple listeners can be configured

#   in one listener.ora, so listener.ora parameters take the form

#   of SID_LIST_<lsnr>, where <lsnr> is the name of the listener

#   this parameter refers to.  All parameters and values are

#   case-insensitive.
 

# <lsnr>

#   This parameter specifies both the name of the listener, and

#   it listening address(es). Other parameters for this listener

#   us this name in place of <lsnr>.  When not specified,

#   the name for <lsnr> defaults to "LISTENER", with the default

#   address value as shown below.

#

# LISTENER =

#  (ADDRESS_LIST=

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

#	(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))	
 

# SID_LIST_<lsnr>

#   List of services the listener knows about and can connect 

#   clients to.  There is no default.  See the Net8 Administrator's

#   Guide for more information.

#

# SID_LIST_LISTENER=

#   (SID_LIST=

#	(SID_DESC=

#			#BEQUEATH CONFIG

#          (GLOBAL_DBNAME=salesdb.mycompany)

#          (SID_NAME=sid1)			

#          (ORACLE_HOME=/private/app/oracle/product/8.0.3)

#			#PRESPAWN CONFIG

#         (PRESPAWN_MAX=20)

#	  (PRESPAWN_LIST=

#           (PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))

#         )

#        )

#       )

	

# PASSWORDS_<lsnr>

#   Specifies a password to authenticate stopping the listener.

#   Both encrypted and plain-text values can be set.  Encrypted passwords

#   can be set and stored using lsnrctl.  

#     LSNRCTL> change_password

#       Will prompt for old and new passwords, and use encryption both

#       to match the old password and to set the new one.

#     LSNRCTL> set password

#	Will prompt for the new password, for authentication with 

#       the listener. The password must be set before running the next

#       command.

#     LSNRCTL> save_config

#       Will save the changed password to listener.ora. These last two

#       steps are not necessary if SAVE_CONFIG_ON_STOP_<lsnr> is ON.

#       See below.

#

# Default: NONE

#

# PASSWORDS_LISTENER = 20A22647832FB454      # "foobar"
 

# SAVE_CONFIG_ON_STOP_<lsnr>

#   Tells the listener to save configuration changes to listener.ora when

#   it shuts down.  Changed parameter values will be written to the file,

#   while preserving formatting and comments.

# Default: OFF

# Values: ON/OFF

#

# SAVE_CONFIG_ON_STOP_LISTENER = ON
 

# USE_PLUG_AND_PLAY_<lsnr>

#   Tells the listener to contact an Onames server and register itself

#   and its services with Onames.

# Values: ON/OFF

# Default: OFF

#

# USE_PLUG_AND_PLAY_LISTENER = ON
 

# LOG_FILE_<lsnr>

#   Sets the name of the listener's log file.  The .log extension

#   is added automatically.

# Default=<lsnr>

#

# LOG_FILE_LISTENER = lsnr
 

# LOG_DIRECTORY_<lsnr>

#   Sets the directory for the listener's log file.

# Default: <oracle_home>/network/log

#

# LOG_DIRECTORY_LISTENER = /private/app/oracle/product/8.0.3/network/log
 

# TRACE_LEVEL_<lsnr>

#   Specifies desired tracing level.

# Default: OFF

# Values: OFF/USER/ADMIN/SUPPORT/0-16

#

# TRACE_LEVEL_LISTENER = SUPPORT
 

# TRACE_FILE_<lsnr>

#   Sets the name of the listener's trace file. The .trc extension

#   is added automatically.

# Default: <lsnr>

#

# TRACE_FILE_LISTENER = lsnr
 

# TRACE_DIRECTORY_<lsnr>

#   Sets the directory for the listener's trace file.

# Default: <oracle_home>/network/trace

#

# TRACE_DIRECTORY_LISTENER=/private/app/oracle/product/8.0.3/network/trace

# CONNECT_TIMEOUT_<lsnr>

#   Sets the number of seconds that the listener waits to get a 

#   valid database query after it has been started.

# Default: 10

#

# CONNECT_TIMEOUT_LISTENER=10
 

SID_LIST_DHOLE =

  (SID_LIST =

   (SID_DESC =

    (SID_NAME = dhole)

    (ORACLE_HOME = /opt/oracle/product/10.2.0/db_1)

    (PROGRAM = hsodbc)

    (ENVS="LD_LIBRARY_PATH=$ORACLE_HOME/lib32:$ORACLE_HOME/lib:/usr/lib:/usr/local/lib")

  )

 )
 

dhole =

 (DESCRIPTION_LIST =

  (DESCRIPTION =

   (ADDRESS=(PROTOCOL=tcp)(HOST=sifaka3xb.rjf.com)(PORT=1522))

   (ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY))

  )

 )
 
 

## tnsnames.ora
 

DHOLE =

  (DESCRIPTION =

    (ADDRESS_LIST =

      (ADDRESS = (PROTOCOL = TCP)(HOST = sifaka3xb.rjf.com)(PORT = 1522))

    )

    (CONNECT_DATA =

      (SID = dhole)(PROGRAM=HSODBC)

    )

    (HS = OK)

  )

Open in new window

0
 
LVL 13

Expert Comment

by:anand_2000v
Comment Utility
Sorry if I did not explain properly, instead of doing a copy paste into the Code Snippet I will require this as an attached File.
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 13

Expert Comment

by:anand_2000v
Comment Utility
based on my research:
"From the description your provided I believe the problem is related to the network share.

First out as a test the DBF file on a LOCAL disk and change the ODBC DSN. Does it work? It should if the configuration is ok....

The problem with network shares is they are NOT avaiable for the local system user (the user who commonly starts the Oracle DB service and also the listener service). This is a MS restriction!.
You have to mve the Oracle DB and Listener service into a dedicated user account who has sufficient permissions to access the netware share. Then in addition you have to specify in the ODBC system DSN instead of the conventional naming <driver letter>:\path\file.dbf the UNC naming method: \\<hostname>\<share>\<filename>.dbf.
UNC naming must be used as driver letters are ONLY availabe as soon as the user logged in!"
0
 
LVL 1

Author Comment

by:mjblake
Comment Utility
I'm using the same user from isql, which works, and from the HS services which does not work.  The ID is a database user in MSSQL with sysadmin.

The drives on the MSSQL side are SAN drives.  They are treated as local drives, so no UNC path.

From what I can tell, ODBC works, but HS is broken.  Just can't find out where.
0
 
LVL 1

Author Comment

by:mjblake
Comment Utility
After much tinkering it turns out that my test query, select * from "sys.databases"@link was the cause of my issues.  The table has a data type that odbc does not like.  Using a select list does not help because, according to the log I looked at, odbc does a select * and lets the caller filter out the unwanted bits.  Selecting from a table with simple data types works fine.

Case Closed.
0
 

Accepted Solution

by:
ee_auto earned 0 total points
Comment Utility
Question PAQ'd, 250 points refunded, and stored in the solution database.
0
 
LVL 3

Expert Comment

by:haidersyed
Comment Utility
Such kind of oracle HS issues are due to wrong configuration of listener and tnsmaes.ora ... Also global_names values affects.
0

Featured Post

Highfive + Dolby Voice = No More Audio Complaints!

Poor audio quality is one of the top reasons people don’t use video conferencing. Get the crispest, clearest audio powered by Dolby Voice in every meeting. Highfive and Dolby Voice deliver the best video conferencing and audio experience for every meeting and every room.

Join & Write a Comment

Suggested Solutions

International Data Corporation (IDC) prognosticates that before the current the year gets over disbursing on IT framework products to be sent in cloud environs will be $37.1B.
Ever needed a SQL 2008 Database replicated/mirrored/log shipped on another server but you can't take the downtime inflicted by initial snapshot or disconnect while T-logs are restored or mirror applied? You can use SQL Server Initialize from Backup…
This video shows how to Export data from an Oracle database using the Original Export Utility.  The corresponding Import utility, which works the same way is referenced, but not demonstrated.
Via a live example, show how to setup several different housekeeping processes for a SQL Server.

728 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now