首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

实践真知:解决 Jdbc 连接 Oracle 12c 时快时慢的问题

李真旭@killdb Oracle ACE,云和恩墨技术专家 个人博客:www.killdb.com 编辑手记:认识 JDBC 连接在不同版本间的差异,准确找出导致连接不稳定的真凶 我们通过一个实例来认识连接的问题...问题描述 客户使用的是 oracle 12c(12.1.0.1),应用通过jdbc访问发现时快时慢。但是通过 sqlplus 访问发现一切正常。...由于之前处理过几个类似的 case,都是 jdbc 版本的问题,因此开始我让他们换几个 jdbc 版本测试下,发现问题依旧。...到这里我似乎感觉是 jdbc 版本的问题了或者是 12c 本身的问题。 将客户的jar把传到自己的 12.1.0.1 和 12.1.0.2 环境中进行测试,发现现象一样,时快时慢。...这个版本很明显是低于Oracle 12.1.0.1 官方文档中的要求的,必须是1.6.0_37以上版本。

3.3K41

Oracle JDBC驱动版本、JDK版本、数据库版本对应关系(ORA-28040)

关于Oracle JDBC驱动版本、JDK版本、数据库版本对应关系 说明: 1、Oracle JDBC驱动版本查看方式(Oracle JDBC驱动程序随Oracle数据库服务器一起提供)(用户:Oracle...从Oracle技术网(OTN)上的JDBC FAQ中,OCI或Thin JDBC驱动程序版本支持以下Javasoft的JDK版本: JDBC版本 JDK版本 JDBC文件名 19.3 8.x9.x10....驱动程序可以访问哪些Oracle数据库: JDBC驱动程序 Oracle数据库 19.3.0 19.318.312.2.012.1.0 11.2.0 18.3.0 19.318.312.2.012.1.0...连接报错:ORA-28040,经检查判断是应用侧连接的Oracle 12c数据库的JDBC驱动版本低导致。...解决方式: 1)、升级JDBC驱动版本;将JDBC驱动版本升级到对应的连接数据库的JDBC驱动版本; 2)、在cd $ORACLE_HOME/network/admin/sqlnet.ora中,修改数据库认证协议

8.2K30
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Maven中央仓库正式成为Oracle官方JDBC驱动程序组件分发中心。

    前言 相信参与使用Oracle数据库进行项目开发、运维的同学常常被Oracle JDBC驱动的Maven依赖折磨。现在这一情况在今年二月份得到了改变,甲骨文这个老顽固终于开窍了。...一位甲骨文的工程师发布博客:在Maven中央仓库中,现在不单单最新版本的Oracle JDBC驱动程序,而且还可以找到以往所有的Oracle JDBC驱动发行版,包括19.6.0.0、19.3.0.0、...Maven中央仓库正式成为Oracle官方的JDBC驱动程序和配套jar的分发中心。 2....,比如JDBC相关的组件为com.oracle.database.jdbc、XML相关的为com.oracle.database.xml。...Maven中央仓库的Oracle相关依赖已经整合到新的groupId下 这就意味着你不再需要自行安装,只需要引入(以ojdbc10为例)相关依赖就能集成Oracle JDBC驱动了: <dependency

    1.4K30

    Oracle 12c中的SQLJSON函数

    本文提供了Oracle Database 12c第2版(12.2)中引入的SQL / JSON函数的示例。...建立测试表及数据 本文中的示例使用以下表: JSON_OBJECT函数 JSON_OBJECT函数将逗号分隔的键值对列表转换为JSON中的对象成员。...JSON_OBJECTAGG聚合函数 JSON_OBJECTAGG聚合函数创建一个JSON对象,其中包含通过聚合每行中的键值对形成的对象成员列表。...复杂的JSON 对象 每个函数调用本身可以是一个表达式,所以他们可以很容易地组合创建复杂的JSON对象。 如果我们将JSON格式化,我们可以看到更好的结构。...所有返回都可能使用BYTE或CHAR指定的不同大小的VARCHAR2值。除JSON_OBJECT函数外,所有函数都可以选择以CLOB格式返回其输出。

    2.8K30

    Oracle 12c R2版本 Application Containers 特性(一)

    在Oracle Database 12c R2版本中,Oracle带来新的Application Containers特性,该特性对原有的多租户功能进行了增强,在CDB root容器中可以创建一个叫做Application...“Application”中的公共对象进行删除操作,如果我们想对公共对象进行删除操作,可以使用UPGRADE子句对现有的“Application”进行升级,在升级的过程中,Oracle会首先自动创建Application...root的Clone版本,Clone版本创建完成后,Application PDBs将指向Clone版本的Application root,“Application”将继续执行升级操作,升级完成之后,...F1956732192_4_1即为qdatacon1的clone版本 删除tdata表,并且创建新表tmeta: ? 结束升级,并查看版本信息: ? 在qdcpdb1中同步qdcon1_reg1 ?...uninstall同样会产生clone版本的Application root 删除对象且结束uninstall: ?

    1.2K60

    Oracle 12c 及以上版本补丁更新说明及下载方法

    12c 及以上版本补丁更新说明及下载方法。...Oracle 为了支持与安全相关的修复以及高优先级的非安全修复,将在每年的 1 月,4 月,7 月和 10 月中每个季度发布一个RU。...从 2017 年 7 月开始,Oracle 对数据库和 GI(Grid Infrastructure) 12.2 及之后版本的主动修补程序进行了更改。...Oracle 从 12.2 版本开始补丁不在使用 PSU、SPU 的称呼了, 取而代之的为 RU (Release Updates) 和 RUR (Release Update Revisions)。...Oracle提供了主动和被动维护的补丁程序: 反应性补丁: 通常以“临时补丁”的形式提供 在历史上被称为“一次性”补丁 根据需要提供给定的“缺陷,版本,平台”组合 经过基本的健康测试 满足所有其他内容标准的回归修补程序将包含在后续的更新和修订中

    1.3K10

    数据库JDBC学习,详解注册JDBC驱动程序的3种方式

    本期学习注册JDBC驱动程序的3种方式 JDBC驱动程序实际上就是在JDBC API中实现定义的接口,用于与数据库服务器进行交互。...而使用JDBC进行数据库操作的第一步就是驱动注册(当然你得先导入JAR)。驱动注册有多种方式,第一步必然是获得正确的驱动名称与URL格式。本文我们就来为大家介绍注册JDBC驱动程序的3种方式。...首先我们先来了解一下常用的驱动程序名称与URL格式: 随着版本变化,会存在些许变动,如有不对,还需重新查验。...3种驱动注册方式: 1、比较常用 2、通过系统的属性设置 3、看起来比较直观的一种方式,注册相应的db的jdbc驱动,3在编译时需要导入对应的lib 注册JDBC驱动程序的3种方式,就是以上介绍到的所有的内容...驱动注册就是加载数据库的驱动程序,是使用JDBC进行数据库操作的第一步。

    1.2K40

    Oracle 12c系列(十) | 12c中的Recovering Tables and Table Partitions

    在Oracle12c之前的版本中,rman进行数据恢复时只能进行database/tablespace/datafile/block四种级别的恢复,如果误操作删除某张表或表中数据,无法通过闪回进行数据还原时...,且有完整备份以及归档,该种情况下可以进行表空间时间点恢复,但恢复方式较麻烦,在Oracle12c中,Oracle对rman功能进行了增强,除了之前的四种级别的恢复,rman也提供了表/表分区级别的恢复...,该特性可以直接从现有的rman备份中来恢复表/表分区,且恢复的过程不影响数据库中的其他的对象。...表级别的恢复流程与表空间时间点恢复流程相似,只是Oracle对手工的表空间时间点恢复进行了一层封装,恢复时整个流程如下: 1.创建一个辅助实例。...在恢复表的过程中观察服务器中的后台实例情况,可以发现为EyDp的SID的辅助数据库,该库即为恢复表时自动创建的辅助数据库,如下: [oracle@node1 ssd2]$ ps -ef | grep pmon

    89420

    Oracle JDBC中的语句缓存

    在Oracle数据库中,SQL解析有几种: 硬解析:过多的硬解析在系统中产生shared pool latch和library cache liatch争用,消耗过多的shared pool,使得系统不具有可伸缩性...软软解析:其实这也也属于软解析,与普通的软解析不同的是,软软解析的SQL会在会话的cached cursor中命中。 一次解析,多次执行:这是解析次数最少的方式,也是系统最具有可扩展性的方式。...那么在JAVA开发的应用中,怎么样才能实现上述第4种方式? 如果是循环处理某种数据,这个比较容易实现。其实对于不是这种情况,Oracle也提供了很好的方式来实现这一点。...那么,上述的方式无疑是比较简单的,但是这种方式有一个问题就是,缓存的利用效率可能不高,因为JAVA会将不常用的SQL语句也进行了缓存。Oracle的JDBC驱动也提供了一种手工控制的方式。...关于语句缓存(Statement Caching)可以参考Oracle在线文档:Statement and Result Set Caching:http://docs.oracle.com/cd/E11882

    1.8K80

    Windows环境下搭建Oracle 12c的体验

    昨天准备一个Oracle环境,结果看起来是很简单的事情,却因为各种各样的原因耽搁了一些时间,从下载到安装部署,已经几个小时过去了,抬头看看,已经是凌晨快2点了。...相关链接如下: Oracle DB 12.2 OUI / setup.exe is blank after invoked in Windows 2012 R2 64 Bit (文档 ID 2330618.1...问题3: 最开始安装的时候,为了快捷,最后的文件是使用了OMF的方式,结果启动之后发现内存占用有些高,于是停了库修改sga的参数,显然不可达习惯的是,竟然没办法直接找到参数文件的路径,不是在$ORACLE_HOME...关于非法关机造成开库造成的startup出现的LRM-00109:could not open parameter file initOrcl.ora 问题4: 在连接的过程中,服务端没有问题了,但是客户端还是可能出现协议版本不兼容的问题...,这个时候我们需要调整下sqlnet.ora,或者升级Java的版本。

    53100

    Oracle cloud control 12c 的启动与关闭

    Oracle cloud control 12c整个安装比较复杂,光是安装路径的选择,登录密码,端口号等众多个配置不免让人眼花缭乱,目不暇接。...本文描述的是安装完毕后如何获取安装时设定的各类端口号,URL以及如何启动、关闭cloud control等等,供大家参考。    ...有关cloud control的安装配置可以参考:Oracle Enterprise Manager Cloud Control 12c Release 3 Installation 1、当前的环境配置...$ sqlplus / as sysdba SQL> startup SQL> exit #使用以下的命令启动oms以及agent [oracle@oel63 ~]$ $OMS_HOME/bin/emctl...start oms [oracle@oel63 ~]$ $AGENT_HOME/bin/emctl start agent 3、查看安装信息 #通过查看之前的安装信息以及端口信息,然后据此连接到cloud

    1.1K20

    使用12c PDB整合环境的总结 (r10笔记第66天)

    从开始使用12c PDB整合环境以来,发现确实不错,原来11g中整合的难题在这里得到了解决。...服务器配置较差,存在宕机风险和数据丢失风险 所以基于以上的问题总结,决定迁移至Oracle 12c提高资源使用率,方便统一管理,服务器最后都会整合到一台服务器上,留有一台作为灾备即可。 ?...对于迁移后的连接问题,其实在12c中还是碰到了不少小问题,简单总结下来。...1.JDBC URL配置变化 如果使用JDBC的连接配置,假设数据库为testdb jdbc:oracle:thin:@10.127.xxx: 1525:testdb 修改为: jdbc:oracle...JDK或者客户端的版本 官方文档 ORA-28040 Using JDBC Connection to 12c Database (Doc ID 2111118.1)明确提到在12c中已经不支持9i的客户端了

    938160

    Oracle 12c CC安装碰见的认证问题

    这两篇文章,介绍了安装12c CC的整个流程。...Oracle 12c CC安装部署攻略 (上) Oracle 12c CC安装部署攻略 (下) 这次要说的是,由于机房搬迁,需要用新的机器来搭建,但即使安装步骤,和之前一样,运行到62%的时候,总是会出错...printOnly=1) 这里我用的jdk 1.7.0_79这个版本。...以上一系列方法,均未能解决,只能尝试大招,换一下jdk版本,用了最新的jdk 1.8版本,安装顺利完成了,可以使用12c CC来集成不同库,通过GUI做一些管理和监控工作, ?...总结: 1. 12c CC的安转过程,即使操作系统版本相同,一些patch补丁不同,都有可能由于需要新的SSL库,或者新的认证方式,导致安装失败,因此保证软件环境的更新(jdk),是非常重要。

    1.3K30

    ORA-28040|高版本数据库客户端连接问题

    :控制19c数据库可以连到哪些版本的数据库(oracle 19c db —>其它版本的oracle db),例如:控制通过DB LINK可连接到哪些版本的oracle库。...该参数用来限制可以连接到数据库服务器上的最小客户端版本,比如设置值为10,即10g,11g等以上客户端版本可以连接到数据库服务器上,在不是指的时候是用默认值的,导致低版本连接不上高版本的数据库。...这里说的 8,10,11 版本指的是 dba_users.password_versions 的版本。 ?...所以问题还在于客户端的兼容性,由于开发人员的 jdk 以及 jdbc 驱动版本过低导致,前面由于惯性设置的 11 不能满足需求,故需将其修改为最低版本 8 即可,当把两台 RAC 的 sqlnet.ora...和 SQLNET.ALLOWED_LOGON_VERSION_CLIENT 你有可能看到过这样的解决方案:在Oracle 12c中d的sqlnet.ora文件添加:SQLNET.ALLOWED_LOGON_VERSION

    6.1K40
    领券