连接 jdbc Oracle10g 错误 ,JDBC代码无问题,服务也启动,连接字符串也是对的,但是在eclipse 下报错,错误信息如下:
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:orcl
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:124)
at oracle.jdbc.driver.DatabaseError.throwSqlException(DatabaseError.java:279)
at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:318)
at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:343)
at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:147)
at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:31)
at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:545)
at java.sql.DriverManager.getConnection(Unknown Source)
at java.sql.DriverManager.getConnection(Unknown Source)
at cn.com.db.DBAccess.getConnection(DBAccess.java:33)
at cn.com.db.DBAccess.main(DBAccess.java:95)
Null
在CMD下snrctl status ,tnsping orcl 显示都正常。
在pl/SQL下用
select open_mode from v$database;
show parameter instance;
select INSTANCE_NAME from v$instance;
sqlplus sys/oracle@orcl
查询都显示正常,就是用pl/sql 登录时 填“数据库名” orcl 就无法登陆,报ora -12514
l最后有效的解决方法:
修改listener.ora文件
原listener.ora文件:
# listener.ora Network Configuration File: D:\oracle\product\10.1.0\Db_4\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.1.0\Db_4)
(PROGRAM = extproc)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
)
修改后的文件:
---------------------------------------------------------------------------------------
# listener.ora Network Configuration File: D:\oracle\product\10.1.0\Db_4\network\admin\listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = D:\oracle\product\10.1.0\Db_4)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = D:\oracle\product\10.1.0\Db_4)
(SID_NAME = orcl)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
)
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = localhost)(PORT = 1521))
)
)
)
-----------------------------------------------------------------
如果错误还存在,也可以那试一下:
set oracle_sid=<sid_name>
sqlplus /nolog
connect sys/pwd as sysdba
start
分享到:
相关推荐
用oracle数据库新建连接时遇到ora-12505,此问题解决后又出现ora-12519错误,郁闷的半天,经过一番折腾问题解决,下面小编把我的两种解决方案分享给大家,仅供参考。 解决方案一: 今天工作时在新建连接的时候遇到...
### Oracle 10g启动后报ORA-16038错误的解决方法 #### 错误概述 在启动Oracle 10g数据库时遇到ORA-16038错误,该错误通常与归档日志操作有关。具体错误信息为: ``` ORA-16038: log 1 sequence #230 cannot be ...
总之,"ORA-28040:没有匹配的验证协议"是一个常见的Oracle连接问题,需要结合Kettle的配置和Oracle数据库的设置来解决。通过以上分析和解决方案,你应该能够找到解决问题的方法,顺利连接到Oracle 12c数据库。
### PowerBuilder 9 连接 Oracle 10g(使用 JDBC 连接) 在软件开发领域,集成不同的数据库系统是一项常见的需求。PowerBuilder 作为一款强大的应用开发工具,支持多种数据库连接方式,其中包括通过 JDBC(Java ...
oracle12c程序连接时异常: ORA-01017: 用户名/口令无效; 登录被拒绝 的解决方案。
### Oracle 12c ORA-01017 错误详解及解决方案 #### 错误概述 在Oracle数据库管理过程中,用户可能会遇到ORA-01017错误:“用户名/口令无效;登录被拒绝”。这一错误通常出现在尝试连接数据库时,提示提供的用户名...
"ora-dba.rar" 是一个专门针对Oracle数据库管理的实用工具集合,对于数据库开发者和管理员而言,它提供了全面的功能,极大地简化了日常的数据库管理和优化任务。这个工具集的使用不仅可以提升工作效率,还能帮助DBA...
### ORA-01460 错误原因分析 ...通过以上步骤的检查和调整,通常可以解决大部分由ORA-01460错误引起的数据库操作问题。需要注意的是,在进行任何更改之前,最好先备份相关配置和数据,以免出现意外情况。
在Oracle数据库系统中,"ORA-00060: 等待资源时检测到死锁" 是一个常见的错误提示,它表明两个或多个事务在执行过程中陷入了无法继续进行的状态,因为彼此都在等待对方释放资源。这种情况通常发生在并发操作中,比如...
在Oracle数据库操作中,我们...当遇到具体异常时,结合Oracle的错误代码(如ORA-XXX)查找官方文档或在线资源,通常能找到具体的解决方案。在编程时,采用异常处理机制,捕获并处理这些错误,能有效提高程序的健壮性。
今天有朋友问到如下一则案例,ORA-01114,ORA-27067以及OSD-04026错误同时出现: *** ACTION NAME:() 2009-04-01 09:31:00.762*** MODULE NAME:(JDBC Thin Client) 2009-04-01 09:31:00.762*** SERVICE NAME:(SYS$...
本篇文章将详细介绍通过JDBC Thin Driver连接Oracle的三种方法,以及它们的特点和适用场景。 ### JDBC Thin Driver连接Oracle的三种方式 #### 1. 使用Service Name Oracle推荐使用Service Name进行连接,因为它...
3. **增强版驱动(Universal Driver)**:这是一个包含所有驱动类型的单一JAR文件,可以支持多种数据库连接方式,包括JDBC-ODBC桥接、Thin以及OCI(Oracle Call Interface,需要本地库)。 在Java程序中使用Oracle ...
本文将深入探讨如何通过Java的JDBC接口以sys用户连接到Oracle数据库,并解决可能遇到的问题。 首先,我们需要了解JDBC的基本概念。JDBC是Java API,它提供了一组接口和类,使得Java应用程序能够与各种类型的数据库...
ORACLE 10g RAC 负载均衡配置 负载均衡是指连接的负载均衡。在 RAC 中,负载均衡分为两种,一种是基于客户端连接的,另外一种是基于服务器端的。下面将详细介绍基于客户端连接的负载均衡配置。 一、客户端负载均衡...
3. **建立连接**:使用`DriverManager`类的`getConnection()`方法建立与Oracle 11g的连接。需要提供数据库URL、用户名和密码: ```java String url = "jdbc:oracle:thin:@localhost:1521:ORCL"; String username ...
1. **建立连接**:使用`DriverManager.getConnection()`方法建立到Oracle数据库的连接,确保已经正确配置了数据库驱动。 2. **预编译SQL语句**:创建`PreparedStatement`对象,预编译SQL查询,例如:`SELECT clob_...
### 连接Oracle 10g免安装客户端解决办法 #### 概述 在实际应用场景中,有时我们可能需要在没有安装完整Oracle客户端的环境中访问Oracle数据库。这通常发生在需要快速部署应用程序或测试环境中,避免复杂的Oracle...
JAVA通过JDBC连接ORACLE9I 一、概述 本文讲述了如何使用JAVA语言通过JDBC(Java Database Connectivity)连接ORACLE9I数据库。JDBC是一种标准的API,用于与各种类型的数据库进行交互。通过使用JDBC,JAVA程序可以...