解决Java连接Oracle 12c存在的问题
感谢作者
原文链接:https://blog.csdn.net/peng_wei_kang/article/details/80403486
1.发现项目报以下错误:
- Caused by: java.sql.SQLException: ORA-28040: 没有匹配的验证协议
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
- at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:427)
- at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
- at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
- at oracle.jdbc.driver.T4CTTIoauthenticate.doOSESSKEY(T4CTTIoauthenticate.java:390)
- at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:356)
- at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
- at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
- at oracle.jdbc.driver.T4CDriverExtension.getConnection(T4CDriverExtension.java:32)
- 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.遇到以下错误:
- Caused by: java.sql.SQLException: ORA-01017: 用户名/口令无效; 登录被拒绝
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:439)
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:388)
- at oracle.jdbc.driver.T4CTTIoer.processError(T4CTTIoer.java:381)
- at oracle.jdbc.driver.T4CTTIfun.processError(T4CTTIfun.java:564)
- at oracle.jdbc.driver.T4CTTIoauthenticate.processError(T4CTTIoauthenticate.java:431)
- at oracle.jdbc.driver.T4CTTIfun.receive(T4CTTIfun.java:436)
- at oracle.jdbc.driver.T4CTTIfun.doRPC(T4CTTIfun.java:186)
- at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:366)
- at oracle.jdbc.driver.T4CTTIoauthenticate.doOAUTH(T4CTTIoauthenticate.java:752)
- at oracle.jdbc.driver.T4CConnection.logon(T4CConnection.java:359)
- at oracle.jdbc.driver.PhysicalConnection.<init>(PhysicalConnection.java:531)
- at oracle.jdbc.driver.T4CConnection.<init>(T4CConnection.java:221)
我确定账号密码没有错误,用sqlplus以及sql developer都可以连接,但通过项目连接就存在这个问题。
解决问题:
通过管理员账号重新去修改一下当前账号的密码为原来的密码:
- SQL< conn system/root; (注意:此处是使用自己的管理员账号和密码去连接)
- SQL< alter user c##ansibee identified by ansibee;
解决Java连接Oracle 12c存在的问题的更多相关文章
- java开发连接Oracle 12c采用PDB遇到问题记录
今天初次使用java连接Oracle 12c,遇到各种问题,为方便后续查询,在汇总了问题记录及解决方案如下. ORA-28040: No matching authentication protoco ...
- Windows下PHP7/5.6以上版本 如何连接Oracle 12c,并使用PDO
https://blog.csdn.net/houpanqi/article/details/78841928 首先,本篇文章重点分享的是:在Win平台下,如何使用PHP7连接Oracle 12C,所 ...
- Oracle的学习三:java连接Oracle、事务、内置函数、日期函数、转换函数、系统函数
1.java程序操作Oracle java连接Oracle JDBC_ODBC桥连接 1.加载驱动: Class.forName("sun.jdbc.odbc.JdbcodbcDriver& ...
- java连接oracle数据库的实现代码
package connectionOracleDatabase; import java.sql.Connection; import java.sql.DatabaseMetaData; impo ...
- oracle入门(5)——java连接oracle数据库
[本文介绍] 前面几篇说了那么多,最终还没讲到如何用java连接数据库,本文实用一点,讲讲如何连接数据库. [java连接oracle数据库] 1.导入jdbc驱动:看到这里,就忙着上网找驱动?不,安 ...
- Java连接Oracle数据库的三种连接方式
背景: 这两天在学习Oracle数据库,这里就总结下自己上课所学的知识,同时记录下来,方便整理当天所学下的知识,也同时方便日后自己查询. SQL语句的话,这里我就不多讲了,感觉和其他的数据库(MySQ ...
- Java连接Oracle数据库常用方法
JDBC的六大步骤: 注册驱动 获取连接 获取执行sql语句对象 执行sql语句 处理结果集 关闭资源 oracle URL: jdbc:oracle:thin:@localhost:1521:SID ...
- java连接oracle jdbc连接
Class.forName("oracle.jdbc.driver.OracleDriver"); Connection ct=Driver.Magager.getConnecti ...
- 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 ...
随机推荐
- Linux实战(7):centos7安装xrdp
系统环境:最小化安装,无安装桌面化 操作 yum更新 yum -y update 安装依赖. tigervnc-server.xrdp .GNOME Desktop yum -y install ep ...
- Node.js 从零开发 web server博客项目[express重构博客项目]
web server博客项目 Node.js 从零开发 web server博客项目[项目介绍] Node.js 从零开发 web server博客项目[接口] Node.js 从零开发 web se ...
- 国内外比较不错的php框架汇总
国外 1.laravel 2.symfony 3.yii 4.laminas(zendframework) 国内 1.thinkphp 2.ebcms 3.暂无
- NX导入DWG失败
给客户开发的NX导入DWG图纸功能,部分电脑偶尔出现导入失败的情况,且几乎没有规律可言.客户无法理解,坚持认为是代码的问题,毕竟使用的是我们二次开发的功能.我本机没有问题,在某些出问题的电脑上也尝试多 ...
- Metasploit之漏洞利用( Metasploitable2)
每个操作系统都会存在各种Bug,像Windows这样有版权的操作系统,微软公司会快速地开发针对这些Bug或漏洞的补丁,并为用户提供更新.全世界有大量的漏洞研究人员会夜以继日地发现.研究新的Bug,这些 ...
- 基于C#的内网穿透学习笔记(附源码)
如何让两台处在不同内网的主机直接互连?你需要内网穿透! 上图是一个非完整版内外网通讯图由内网端先发起,内网设备192.168.1.2:6677发送数据到外网时候必须经过nat会转换成 ...
- 020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结
020 01 Android 零基础入门 01 Java基础语法 02 Java常量与变量 14 变量与常量 知识总结 本文知识点:变量与常量 知识总结 Java中的标识符 Java中的关键字 目前常 ...
- matlab中nargin函数输入参数数目
来源:https://ww2.mathworks.cn/help/matlab/ref/nargin.html?searchHighlight=nargin&s_tid=doc_srchtit ...
- 【题解】CF413C Jeopardy!
\(\color{blue}{Link}\) \(\text{Solution:}\) 首先,显然的策略是把一定不能翻倍的先加进来.继续考虑下一步操作. 考虑\(x,y\)两个可以翻倍的物品,且\(a ...
- Python+Appium自动化测试(14)-yaml配置Desired capabilities
一,前言 在之前的appium自动化测试示例中,我们都是把构造driver实例对象的数据(即Desired Capabilities)写在业务代码里,如下: # -*- coding:utf-8 -* ...