我遇到的错误超出了我在TNS-12505 中看到的错误:TNS:listener 目前不知道连接描述符中给出的 SID
我正在使用 Windows 8、Oracle 11.2 XE、java 1.7.15 和 Eclipse Juno SR2。
我收到的错误是:
java.sql.SQLException:侦听器拒绝连接并出现以下错误:ORA-12505,TNS:侦听器当前不知道连接描述符中给出的 SID
我已经正确注册了驱动程序,并且我已经编辑了 listener.ora 以使服务明确,在我所看到的两种方式中都给出了示例 - 在 SID_LIST_LISTENER 下,我添加了:
(SID_DESC =
(SID_NAME = XE)
(ORACLE_HOME = C:\oraclexe\app\oracle\product\11.2.0\server)
)
在 LISTENER = (DESCRIPTION_LIST 我添加了
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
tnsnames.ora 包含,作为它的第一个条目:
XE =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = XE)
)
)
进行调用的源代码是:
Class.forName(JDBC_DRIVER);
String connectionString = "jdbc:oracle:thin:localhost:1521/XE";
myConnection = DriverManager.getConnection(connectionString, "myuser", "myuserpw");
我还对connectionString进行了以下排列。结果在这里注明:
jdbc:oracle:thin:@localhost:1521:XE // java.sql.SQLException: ORA-01017: invalid username/password; logon denied
jdbc:oracle:thin:localhost:1521:XE // error ORA 12505
jdbc:oracle:thin:@//localhost:1521:XE // error java.sql.SQLRecoverableException: IO Error: The Network Adapter could not establish the connection
jdbc:oracle:thin:@localhost:1521/XE // error ORA-01017
jdbc:oracle:thin:@//localhost:1521/XE // error ORA-01017
有人有想法吗?