metalink上摘录的:
ORA-28545:
SQL> select * from all_catalog@demo;
select * from all_catalog@demo
*
ERROR at line 1:
ORA-28545: error diagnosed by Net8 when connecting to an agent
NCRO: Failed to make RSLV connection
ORA-02063: preceding 2 lines from DEMO
Resolution:
There's something wrong with the SQL*Net connection:
- checking the SQL*Net -> Listener configuration with TNSPING:
tnsping
TNS-12545: Connect failed because target host or object
does not exist
The HOSTNAME specified in the TNSNAMES.ORA is invalid
Try with the OS ping to resolve the hostname / IP adddress
TNS-12541: TNS:no listener
The hostname specified in the listener.ora points to a
machine without an Oracle listener, the listener on that
machine is not running or the port number is wrong.
NO ERROR with TNSPING:
This might be caused by an invalid SID configuration.
Please make sure, that the SID in the listener refelects the
SID specified in the TNSNAMES.ORA. Make sure you don't mix
SID syntax with SERVICE_NAME syntax.
If everything is configured well, please make sure that
lsnrctl status shows at least one service handler for
hsodbc. Probably restart the listener AFTER changing
the listener.ora file.
Still no error found, then please enable listener tracing
(level support) and have a look at the listener.trace file
after retrying the same select statement again.
In the file you should see the connect from the Oracle
database to the listener. After a few lines you should see that
the listener tries to open 2 pipes. Does this work or does it
fail and again a few lines later you see a hex/ascii block that
conatins an error stack like:
Example 1:
ERR=12500, CODE=12500, EMFI=4, CODE=12560, EMFI=4?
Solution 1:
Then please check again the listener.ora file; is the
ORACLE_HOME directory specified within the listener.ora file
correct? Or if you are using environment variables in the
listener.ora please replace them with absolute paths.
Example 2:
EMFI=4, CODE=12547, EMFI=4, CODE=12560, EMFI=4,
CODE=517, EMFI=4, BUF='Solaris.Error: 32: Broken pipe'
or similar
TNS-12500: TNS:listener failed to start a dedicated server process
TNS-12547: TNS:lost contact
TNS-12560: TNS
rotoadapter error
TNS-00517: Lost contact
Solaris Error: 32: Broken pipe
Solution 2:
check out the executable of the gateway; -> PROGRAM=
it must be loacated in the $ORACLE_HOME/bin (where $ORACLE_HOME is the
Oracle_Home of the OTG and also correctly specified in the listener.ora file).
Calling it from the DOS command line / Unix shell should not report any
error like file not found...
Make sure the LD_LIBRARY_PATH, LIBPATH, SHLIB_PATH contains the 32bit libraries
location as well.
|