`
shuai1234
  • 浏览: 992008 次
  • 性别: Icon_minigender_1
  • 来自: 山西
社区版块
存档分类
最新评论

JDBC连接ORACLE 12C PDB数据库

 
阅读更多

JDBC连接ORACLE 12C PDB数据库

 
应用环境 :
  应用服务器linux,中间件:tomcat 6,jdk版本:1.6.0_43,jdbc驱动:ojdbc6,数据库oracle12c pdb。
 
问题描述
  环境搭建完成之后, 连接使用的连接串格式为:jdbc:oracle:thin:@127.0.0.1:1521/pdborcl
       在应用连接数据库的时候一直报错:
        java.sql.SQLException: Io 异常: Invalid connection string format, a valid format is: "host:port:sid" 。
                            
解决过程
        1、首先在应用当中做了很多的尝试,无法得到解决,网上查询资料,说是低版本的ojdbc驱动就会出现这样的问题,但是使用的驱动是没有问题的,版本都是匹配的。
        2、之后改变连接串格式为:jdbc:oracle:thin:@(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=10.9.20.41)(PORT=1521))(CONNECT_DATA=(SERVER=DEDICATED)(SERVICE_NAME=MANAGER))),但是这种方式还是报错了,查询资料之后需要在oracle的安装目录的/NETWORK/ADMIN/sqlnet.ora中添加版本支持的参数,添加完成参数之后本地连接本地库成功。但是服务器是oracle一体机,做了集群,只能操作数据库,不能访问系统,无法做这样的尝试,并且跟oracle一体机的管理人员沟通表示,我们的连接串(jdbc:oracle:thin:@127.0.0.1:1521/pdborcl)是没有问题的,而且必须是这样,所以还是得解决在原先连接串下的问题。
        3、本机使用java-jdbc的小例子,用ojdbc6驱动连接数据库没有任何问题,可以查出数据,那么驱动包是没有问题的。
        4、后来请教部门技术专家分析认为是jar包加载的问题,按照工程启动时jar包的加载顺序:jdk-tomcat-project,提供的解决办法,将ojdbc6在jdk相关jar包目录、tomcat 相关jar包目录中都拷贝了ojdbc6驱动,启动正常,问题解决。
        5、之后我试了一下,只有将ojdbc6包拷贝到jdk的jre的lib(jdk1.6.0_43\jre\lib)下才好用,但是在jdk中未发现其他类似jdbc包的痕迹,暂不清楚是那个文件引起的这个错误。
 
解决方法
  将ojdbc6包copy到jdk1.6.0_43\jre\lib或相关加载路径下优先去加载驱动包,问题解决。
 
 
分享到:
评论

相关推荐

    jdbc连接oracle12c的驱动文件(ojdbc6,ojdbc8)

    4. **配置数据源**:在企业级应用中,通常会通过数据源(DataSource)来管理数据库连接,这可以提高性能和资源管理。例如,在Java EE环境中,可以使用JNDI查找来获取预配置的数据源。 5. **Oracle 12c特性**: - *...

    Kettle链接Oracle12c数据库驱动

    Kettle链接Oracle数据库比较坑,为试了很多驱动都不能正常驱动,一会报没有发现驱动,一会报字符集问题,我找我们公司大佬要了一个驱动,直接可以驱动起来,特此分享! 备注:解压jdbc压缩文件,将里面所有的jar...

    oracle12C驱动包

    Oracle 12C驱动包是Java应用程序连接Oracle 12C数据库的重要组件,主要用于实现Java Database Connectivity (JDBC)。JDBC是Java编程语言中用于规范客户端程序如何访问数据库的标准接口,而ojdbc驱动则是Oracle公司...

    oracle12c ORA-01017: 用户名/口令无效; 登录被拒绝 解决方案

    oracle12c程序连接时异常: ORA-01017: 用户名/口令无效; 登录被拒绝 的解决方案。

    oracle12C依赖包.zip

    - **Oracle Instant Client**:用于连接到Oracle数据库的轻量级客户端,包括ODBC、OCI和JDBC驱动程序。 - **.NET Framework**:对于Windows环境,安装Oracle数据库可能需要.NET Framework支持某些客户端工具或服务...

    oracle 12 c ORA-01017: 用户名/口令无效; 登录被拒绝

    - **格式要求**:在Java应用程序中使用JDBC连接Oracle数据库时,正确的URL格式对于避免ORA-01017等错误至关重要。 - 正确的URL格式: ```plaintext jdbc:oracle:thin:@localhost:1521/YXSYSPDB ``` - 注意事项...

    oracle_instanceclient_x64_11gR2_12cR1_12cR2_all_in_one

    使用Instant Client,开发者可以管理数据库连接池,优化资源使用,提高应用程序性能。 8. **系统需求**: 在安装和使用Oracle Instant Client前,需要确保操作系统兼容性、足够的磁盘空间以及符合要求的硬件配置...

    instantclient版本集合大全

    3. **Oracle Instant Client 12.1**: 这个版本对应Oracle Database 12c Release 1,这是Oracle首次采用多版本并存架构(Multitenant Architecture),引入了Container Database (CDB) 和 Pluggable Database (PDB) ...

    instantclient_12_2

    综上所述,"instantclient_12_2"是Oracle数据库用户和开发者的一个重要工具,它提供了高效、便捷的数据库连接方式,同时支持Oracle Database 12c的诸多新特性,对于日常开发、测试和维护工作具有显著的帮助。

Global site tag (gtag.js) - Google Analytics