Java Oracle本地主机连接错误(ORA-12505)

我正在尝试当前连接到当前计算机上的数据库。

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.SQLException;

public class Main {

public static void main(String[] argv) throws Exception {

Connection connection = null;

try {

// Load the JDBC driver

String driverName = "oracle.jdbc.driver.OracleDriver";

Class.forName(driverName);

// Create a connection to the database

String serverName = "localhost";

String portNumber = "1521";

String sid = "xe";

String url = "jdbc:oracle:thin:@" + serverName + ":" + portNumber + ":" + sid;

String username = "scott";

String password = "tiger";

connection = DriverManager.getConnection(url, username, password);

System.out.println("Success");

} catch (ClassNotFoundException e) {

System.out.println("Class Not Found Error");

}

}

}

我不断收到此错误,但我不知道为什么…

Exception in thread "main" java.sql.SQLException: Listener refused the connection with the following error:

ORA-12505, TNS:listener does not currently know of SID given in connect descriptor

The Connection descriptor used by the client was:

localhost:1521:xe

at oracle.jdbc.driver.SQLStateMapping.newSQLException(SQLStateMapping.java:70)

at oracle.jdbc.driver.DatabaseError.newSQLException(DatabaseError.java:110)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:171)

at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:496)

at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:411)

at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:490)

at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:202)

at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:33)

at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:465)

at java.sql.DriverManager.getConnection(Unknown Source)

at java.sql.DriverManager.getConnection(Unknown Source)

at Main.main(Main.java:21)

在我的服务器中,我使用了命令(以sys登录)SQL>从v $ thread选择实例;(它返回)实例-> xe

我可能做错了什么?

谢谢!

PS我也尝试了127.0.0.1而不是localhost

回答:

检查<ORACLE_HOME>\admin\NETWORK目录下的listener.ora文件是否具有以下值:

XE =

(DESCRIPTION =

(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))

(CONNECT_DATA =

(SERVER = DEDICATED)

(SERVICE_NAME = XE)

)

)

以上是 Java Oracle本地主机连接错误(ORA-12505) 的全部内容, 来源链接: utcz.com/qa/425502.html

回到顶部