2017-07-04 19 views
0

JDBCからの接続を受け入れるようにOracle XEを同軸化しようとしています。私は、XEインストールからojdbc6.jarを使用します(ojdbc5とojdbc6_g jarもあります)。 oracle.jdbc.OracleDriverとoracle.jdbc.driver.OracleDriverを試してみました。ドライバクラスが登録されています。私は記述子を使用します:jdbc:oracle:thin:@localhost:1521:XE。JDBC経由でOracle XE 11に接続するTimeoutException

私はまた、XEの代わりに/ XEで終わってみました。また、localhostの代わりに実際のホスト名Kaveriを試しました。

sqlplusを使用してログオンできます。データベースは開いており、メイン・サービスとTNSリスナー・サービスは実行中です。

のlistener.ora:

SID_LIST_LISTENER = 
(SID_LIST = 
(SID_DESC = 
    (SID_NAME = PLSExtProc) 
    (ORACLE_HOME = E:\Data\OracleXE\app\oracle\product\11.2.0\server) 
    (PROGRAM = extproc) 
) 
(SID_DESC = 
    (SID_NAME = CLRExtProc) 
    (ORACLE_HOME = E:\Data\OracleXE\app\oracle\product\11.2.0\server) 
    (PROGRAM = extproc) 
) 
) 

LISTENER = 
(DESCRIPTION_LIST = 
(DESCRIPTION = 
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1)) 
    (ADDRESS = (PROTOCOL = TCP)(HOST = Kaveri)(PORT = 1521)) 
) 
) 

DEFAULT_SERVICE_LISTENER = (XE) 

tsnames.ora:私はまた私たち自身のJavaプログラムを使用して

java.util.concurrent.TimeoutException 
at java.util.concurrent.FutureTask.get(Unknown Source) 
at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.awaitConnection(OpenConnectionCommand.java:132) 
at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand.access$100(OpenConnectionCommand.java:45) 
at net.sourceforge.squirrel_sql.client.mainframe.action.OpenConnectionCommand$2.run(OpenConnectionCommand.java:115) 
at java.util.concurrent.Executors$RunnableAdapter.call(Unknown Source) 
at java.util.concurrent.FutureTask.run(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor.runWorker(Unknown Source) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(Unknown Source) 
at java.lang.Thread.run(Unknown Source) 

を取得

XE = 
(DESCRIPTION = 
(ADDRESS = (PROTOCOL = TCP)(HOST = Kaveri)(PORT = 1521)) 
(CONNECT_DATA = 
    (SERVER = DEDICATED) 
    (SERVICE_NAME = XE) 
) 
) 

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

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

私は

java.sql.SQLRecoverableException: IO Error: Socket read timed out 
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:673) 
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:715) 
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:385) 
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:30) 
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:564) 
at java.sql.DriverManager.getConnection(Unknown Source) 
at java.sql.DriverManager.getConnection(Unknown Source) 
... 
Caused by: oracle.net.ns.NetException: Socket read timed out 
at oracle.net.ns.Packet.receive(Packet.java:350) 
at oracle.net.ns.NSProtocolStream.negotiateConnection(NSProtocolStream.java:153) 
at oracle.net.ns.NSProtocol.connect(NSProtocol.java:263) 
at oracle.jdbc.driver.T4CConnection.connect(T4CConnection.java:1360) 
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:486) 
... 39 more 
を取得3210

LSNRCTLはしばらく後にハングアップするようだ:

> lsnrctl status 

LSNRCTL for 64-bit Windows: Version 11.2.0.2.0 - Production on 04-JUL-2017 
17:29:09 

Copyright (c) 1991, 2014, Oracle. All rights reserved. 

Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1))) 
TNS-12560: TNS:protocol adapter error 
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=Kaveri)(PORT=1521))) 

は、これは誤解を避けるためのWindows 10上でのOracle XEの「新鮮な再インストール」で、私は願っています(効果なしで、あまりにもファイアウォールオフ!)。

どのように1つのデバッグをOracleに接続しますか?ありがとうございました。

UPDATE:私は横たわっていた - またはWindowsでした - それはランニングなどのTNSListenerを一覧表示したときに、状況は実際には、「ローカルコンピュータ上のOracleXETNSListenerサービスが開始して停止...」

答えて

0

私はlocalhostの代わりに使用している場合設定ファイルにKaveriがある場合、リスナーはそのままです(なぜ、Kaveri ..のようにホスト名が?)

その後はBob 1174's answer here is what was neededです。

関連する問題