JDBC Connect nur über SID fehlerfrei möglich

GGK_01

Bekanntes Mitglied
Hallo,

ich greife von einem Linux Server auf eine an einem anderen Host liegende Oracle DB (11.2.0.4) zu.
Seit dem Update auf diese Oracle Version habe ich immer wieder Ausfälle beim DB Connect (jdbc6 für 11.2.04).

Verwende ich den Connect String mit dem Servicename:
Java:
String url = "jdbc:oracle:thin:@host:1521/Servicename";

dann erhalte ich bei den Tests ca. 50 % Programmabbrüche, 50 % laufen Problemlos durch.
Wenn ich das Programm von meinem Windows Client ausführe, laufen alle Tests ohne Fehler durch

Fehler:
Java:
java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:489)
        at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:553)
        at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:254)
        at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
        at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:528)
        at java.sql.DriverManager.getConnection(DriverManager.java:620)
        at java.sql.DriverManager.getConnection(DriverManager.java:200)
        at DB.select(mrtg_aim.java:36)
        at DB.main(mrtg_aim.java:84)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.lang.reflect.Method.invoke(Method.java:616)
        at org.eclipse.jdt.internal.jarinjarloader.JarRsrcLoader.main(JarRsrcLoader.java:58)
Caused by: oracle.net.ns.NetException: The Network Adapter could not establish the connection
        at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:439)
        at oracle.net.resolver.AddrResolution.resolveAndExecute(AddrResolution.java:454)
        at oracle.net.ns.NSProtocol.establishConnection(NSProtocol.java:693)
        at oracle.net.ns.NSProtocol.connect(NSProtocol.java:347)
        at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1140)
        at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:340)
        ... 13 more
Caused by: java.net.UnknownHostException: Host_XYZ
        at java.net.Inet6AddressImpl.lookupAllHostAddr(Native Method)
        at java.net.InetAddress$1.lookupAllHostAddr(InetAddress.java:895)
        at java.net.InetAddress.getAddressFromNameService(InetAddress.java:1274)
        at java.net.InetAddress.getAllByName0(InetAddress.java:1225)
        at java.net.InetAddress.getAllByName(InetAddress.java:1156)
        at java.net.InetAddress.getAllByName(InetAddress.java:1092)
        at oracle.net.nt.TcpNTAdapter.connect(TcpNTAdapter.java:117)
        at oracle.net.nt.ConnOption.connect(ConnOption.java:133)
        at oracle.net.nt.ConnStrategy.execute(ConnStrategy.java:405)
        ... 18 more

verwende ich die SID im Aufruf, dann läuft der Connect ohne Probleme:
Java:
String url = "jdbc:oracle:thin:@Host:1521:SID";

Kann mir hier jemand einen Hinweis geben?

Danke GGK
 

Zurück
Oben