感谢作者

原文链接: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. 003.当在windows终端输入ipconfig时,显示不是内部或外部命令,也不是可运行的程序或批处理文件

    当在windows终端输入ipconfig时,显示不是内部或外部命令,也不是可运行的程序或批处理文件,这是环境变量的问题: 右键我的电脑→→→属性→→→高级系统设置→→→(高级)环境变量 在弹出的窗口 ...

  2. 20行代码实现,使用Tarjan算法求解强连通分量

    今天是算法数据结构专题的第36篇文章,我们一起来继续聊聊强连通分量分解的算法. 在上一篇文章当中我们分享了强连通分量分解的一个经典算法Kosaraju算法,它的核心原理是通过将图翻转,以及两次递归来实 ...

  3. nohup命令重定向标准输出和错误输出

    命令:command > /dev/null  2>&1 & 输出到/dev/null表示输出重定向到黑洞,即输出内容不打印到屏幕上,null是/dev下空设备文件. &g ...

  4. Redis学习(一)认识并安装redis

    一.初识redis Redis是一个开源的Key-Value数据库,通常被称为数据结构服务器,其值可以是多种常见的数据格式,且读写性能极高,且所有操作都是原子性的. Redis是运行在内存中的,但是可 ...

  5. 机器学习-线性规划(LP)

    线性规划问题 首先引入如下的问题: 假设食物的各种营养成分.价格如下表: Food Energy(能量) Protein(蛋白质) Calcium(钙) Price Oatmeal(燕麦) 110 4 ...

  6. Python爬虫之反爬虫---使用随机User-Agent

    在编写爬虫时,大多数情况下,需要设置请求头.而在请求头中,随机更换User-Agent可以避免触发相应的反爬机制. 使用第三方库fake-useragent便可轻松生成随机User-Agent. 使用 ...

  7. Linux软件管理常用命令和选项

    rpm /var/lib/rpm:数据库目录 -ivh x:安装软件包x -Uvh x:升级或安装软件包x,如果没有安装x的旧版本,则安装x,否则删除x的旧版本后再安装x. -Fvh x:升级软件包x ...

  8. Centos-归档文件或目录-tar

    tar 对文件或者目录进行打包归档成一个文件,不是压缩 相关选项 -c 新建文件 -r 将目标文件追加都档案文件末尾 -t 列出归档文件中已经归档文件列表 -x 从归档文件中还原文件 -u 新文件更新 ...

  9. 模型集成model ensemble

    A prediction model that is composed of a set of models is called a model ensemble. Baggging 和Boostin ...

  10. IDEA配置jQuery,$符号不再显示黄色波浪线

    在使用IDEA搭建Maven的Web环境时,编写的JQuery入口函数时,遇到了未知符号的提示,并且在前端页面js的console里报错. 以下是错误信息:  解决方案:  继续看图: 配置成功生效: ...