感谢作者

原文链接:https://blog.csdn.net/peng_wei_kang/article/details/80403486

1.发现项目报以下错误:

  1.  
    Caused by: java.sql.SQLException: ORA-28040: 没有匹配的验证协议
  2.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
  3.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
  4.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
  5.  
    at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:427)
  6.  
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
  7.  
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
  8.  
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOSESSKEY(T4CTTIoauthenticate.java:390)
  9.  
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:356)
  10.  
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
  11.  
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
  12.  
    at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
  13.  
    at oracle.jdbc.driver.OracleDriver.connect(OracleDriver.java:503)

解决方法:

在oracle安装目录下的\product\12.2.0\dbhome_1\network\admin\sqlnet.ora文件中新增一行,内容如下:

SQLNET.ALLOWED_LOGON_VERSION=8

SQLNET.ALLOWED_LOGON_VERSION=8

接着重启项目。

2.遇到以下错误:

  1.  
    Caused by: java.sql.SQLException: ORA-01017: 用户名/口令无效; 登录被拒绝
  2.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
  3.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
  4.  
    at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
  5.  
    at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:564)
  6.  
    at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
  7.  
    at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
  8.  
    at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
  9.  
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366)
  10.  
    at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752)
  11.  
    at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:359)
  12.  
    at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
  13.  
    at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)

我确定账号密码没有错误,用sqlplus以及sql developer都可以连接,但通过项目连接就存在这个问题。

解决问题:

通过管理员账号重新去修改一下当前账号的密码为原来的密码:

  1.  
  2. SQL< conn system/root;  (注意:此处是使用自己的管理员账号和密码去连接)
  3. SQL< alter user c##ansibee identified by ansibee;
  4.  

解决Java连接Oracle 12c存在的问题的更多相关文章

  1. java开发连接Oracle 12c采用PDB遇到问题记录

    今天初次使用java连接Oracle 12c,遇到各种问题,为方便后续查询,在汇总了问题记录及解决方案如下. ORA-28040: No matching authentication protoco ...

  2. Windows下PHP7/5.6以上版本 如何连接Oracle 12c,并使用PDO

    https://blog.csdn.net/houpanqi/article/details/78841928 首先,本篇文章重点分享的是:在Win平台下,如何使用PHP7连接Oracle 12C,所 ...

  3. Oracle的学习三:java连接Oracle、事务、内置函数、日期函数、转换函数、系统函数

    1.java程序操作Oracle java连接Oracle JDBC_ODBC桥连接 1.加载驱动: Class.forName("sun.jdbc.odbc.JdbcodbcDriver& ...

  4. java连接oracle数据库的实现代码

    package connectionOracleDatabase; import java.sql.Connection; import java.sql.DatabaseMetaData; impo ...

  5. oracle入门(5)——java连接oracle数据库

    [本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安 ...

  6. Java连接Oracle数据库的三种连接方式

    背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...

  7. Java连接Oracle数据库常用方法

    JDBC的六大步骤: 注册驱动 获取连接 获取执行sql语句对象 执行sql语句 处理结果集 关闭资源 oracle URL: jdbc:oracle:thin:@localhost:1521:SID ...

  8. java连接oracle jdbc连接

    Class.forName("oracle.jdbc.driver.OracleDriver"); Connection ct=Driver.Magager.getConnecti ...

  9. PLSQL Developer 不能连接 oracle 12c 64位 的解决办法 for win 64

    1.安装Oracle 12c 64位 2.安装32位的Oracle客户端( instantclient-basic-nt-12.1.0.1.0) 1) 下载instantclient-basic-nt ...

随机推荐

  1. 文档驱动 —— 表单组件(五):基于Ant Design Vue 的表单控件的demo,再也不需要写代码了。

    源码 https://github.com/naturefwvue/nf-vue3-ant 特点 只需要更改meta,既可以切换表单 可以统一修改样式,统一升级,以最小的代价,应对UI的升级.切换,应 ...

  2. Jackson反序列化枚举类型解决方案

    BUG描述 在使用SpringBoot自带的jackson处理客户端提交的消息体反序列化时,遇到一个非常棘手的情况 客户端发送如下json {"content":"654 ...

  3. mysql load_file()

    本地mysql注入读取配置文件 遇到的问题 简单记录一下. 本地测试时,读取文件发现无论怎样都返回为NULL. >> select load_file('c:/xx/xx/xx/x.txt ...

  4. sping ioc 源码分析(二)-- refresh()方法分析

    测试环境代码: @Configuration @ComponentScan("com.yang.xiao.hui.ioc") @Conditional(MyCondition.cl ...

  5. python下正则表达式的随笔记录

    使用了下正则的表达式: 目的:取出字符串中{}中的内容 最后使用的正则表达式为 {(.*?)} 先看   .*?  : 首先  .  是用来匹配字符串,但是只能匹配一次. 所以加上  *  ,可以让 ...

  6. Vue路由Hash模式分析

    Vue路由Hash模式分析 Vue-router是Vue的核心组件,主要是作为Vue的路由管理器,Vue-router默认hash模式,即使用URL的Hash来模拟一个完整的URL,当URL改变时页面 ...

  7. 004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构

    004 01 Android 零基础入门 01 Java基础语法 01 Java初识 04 Java程序的结构 Java程序的结构 Java程序外层--类 程序外层,如下面的代码,是一个类的定义. c ...

  8. 03 以Hello World为例,分析C语言的最小的程序结构

    C程序主要包含的部分 预处理器指令 函数 变量 语句 & 表达式 注释 C Hello World 实例 如下程序,可以在屏幕输出短句"Hello World" #incl ...

  9. LiteOS-任务篇-源码分析-系统启动函数

    目录 前言 链接 参考 开启调度 LOS_Start 函数源码 osTickStart 函数源码 LOS_StartToRun 函数源码 前言 20201009 移植好内核后,开始实战内核. 源码分析 ...

  10. TP5自定义路由,为了安全性

    1,入口文件index.php,不要指定任意模块,不然,自定义路由,就不会有任何效果哦 2,在配置文件 route.php  中引进   use think\Router  自带路由文件 3,将路由进 ...