oracle - 尝试从 selenium 连接到 oracle DB 时出错
问题描述
我正在尝试使用 jdbc 从 Selenium 连接到 Oracle 数据库,并且收到以下消息:
java.sql.SQLRecoverableException: Listener refused the connection with the following error:
ORA-12514, TNS:listener does not currently know of service requested in connect descriptor
我能够从 pl/sql 成功连接到这个数据库,但是从 jdbc 我得到了这个错误。下面是代码。任何人都可以在这里帮助我吗?
@Test
public void test11 () {
String server = "host";
String port = "1521";
String database = "db";
String user = "user";
String pwd = "pw";
try {
String url = "jdbc:oracle:thin:@" + server + ":" + port + "/" + database;
Connection con = DriverManager.getConnection(url, user, pwd);
Statement stmt = con.createStatement();
con.close();
} catch (Exception e) {
e.printStackTrace();
}
听众.ORA:
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = "net_service_name")
(ORACLE_HOME = C:\oracle\product\10.2.0\client_1)
(SID_NAME = "net_service_name")
)
(SID_DESC =
(GLOBAL_DBNAME = "service_name")
(ORACLE_HOME = C:\oracle\product\10.2.0\client_1)
(SID_NAME = "service_name")
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = "host")(PORT = 1521))
)
)
)
TNSNAMES.ORA:
"net_service_name"=
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = "host")(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = "service_name")
)
)
解决方案
我觉得你用错了
String url = "jdbc:oracle:thin:@" + server + ":" + port + "/" + database;
: 反而 /
尝试使用您的参数
public static void conn() throws ClassNotFoundException, SQLException{
Connection con=DriverManager.getConnection(
"jdbc:oracle:thin:@localhost:1521:orclpdb", "HR", "HR");
Statement stmt=con.createStatement();
ResultSet rs=stmt.executeQuery("select count(*) from dual");
while(rs.next())
System.out.println(rs.getInt(1));
con.close();
}
推荐阅读
- java - 有没有办法获取要在黄瓜 JVM 的 @BeforeClass 注释中运行的场景列表
- javascript - 我已经使用 if 和 else 来使用 click 播放音乐,但是如何在 Javascript 中使用键盘播放音乐?
- java - Spring Boot中的多个WebSecurityConfigurerAdapter不能一起工作
- python - 将choicefield的输入发布到django模型中
- amazon-web-services - Aurora Serverless 不支持 Boto3 rds-data continueAfterTimeout?
- sql - 在具有唯一性条件的列上创建唯一约束
- tomcat - 使用 log4j 1 或 log4j 2 和 Tomcat 9 的应用程序日志记录不起作用
- ssl - 对 Amazon Trust Services 迁移的 boto 支持
- php - 如何在 twig 2020-12-11 11:06:02.748996+01 中编写这种格式
- python-3.x - django-microsoft-auth:为输入参数“redirect_uri”提供的值无效