PLSQL通过Oracle 11g客户端连接Oracle 12c服务器错误 ORA-28040-阿里云开发者社区

开发者社区> eric0435> 正文

PLSQL通过Oracle 11g客户端连接Oracle 12c服务器错误 ORA-28040

简介:
+关注继续查看

PLSQL通过Oracle 11g客户端连接Oracle 12c服务器错误 ORA-28040
环境描述:
oracle服务器端版本:oracle 12.2.0.1.0
oracle客户端版本:oracle 11.2.0.1.0
PLSQL是11.4

因为PLSQL连接数据库也是要通过Oracle客户端,那么使用11g客户端访问oracle 12c应该也会得到如下错误:

C:UsersAdministrator>sqlplus sys/abcd@shardcat as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 20 22:22:07 2014

Copyright (c) 1982, 2010, Oracle. All rights reserved.

ERROR:
ORA-28040: No matching authentication protocol
查看关于错误的详细描述:

[oracle@shard1 admin]$ oerr ora 28040
28040, 0000, "No matching authentication protocol"
// *Cause: There was no acceptable authentication protocol for
// either client or server.
// *Action: The administrator should set the values of the
// SQLNET.ALLOWED_LOGON_VERSION_SERVER and
// SQLNET.ALLOWED_LOGON_VERSION_CLIENT parameters, on both the
// client and on the server, to values that match the minimum
// version software supported in the system.
// This error is also raised when the client is authenticating to
// a user account which was created without a verifier suitable for
// the client software version. In this situation, that account's
// password must be reset, in order for the required verifier to
// be generated and allow authentication to proceed successfully.

在服务器端查看表:dba_users,PASSWORD_VERSIONS 列是:11G 12C

SQL> select username, account_status,password_versions from dba_users where account_status='OPEN';

USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
------------------------------ ---------------------------------------------------------------- ----------------------------------
SYS OPEN 11G 12C
SYSTEM OPEN 11G 12C
GSMCATUSER OPEN 11G 12C
JY OPEN 11G 12C
MYGDSADMIN OPEN 11G 12C
APP_SCHEMA OPEN 11G 12C

6 rows selected.
服务器端:修改 sqlnet.ora 配置:(配置修改后,不需要重启oracle服务器)我这里是新创建的sqlnet.ora,因为原来没有创建

[oracle@shard1 admin]$ ls -lrt
总用量 12
-rw-r--r--. 1 oracle oinstall 1441 8月 28 2015 shrept.lst
drwxr-xr-x. 2 oracle oinstall 61 10月 12 2017 samples
-rw-r-----. 1 oracle oinstall 960 1月 18 2018 tnsnames.ora
-rw-r--r-- 1 oracle oinstall 504 2月 17 12:58 listener.ora
[oracle@shard1 admin]$ vi sqlnet.ora
SQLNET.ALLOWED_LOGON_VERSION_SERVER=11
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=11
客户端:再次尝试连接,提示用户名密码错误:

C:UsersAdministrator>sqlplus sys/abcd@shardcat as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 20 22:16:06 2014

Copyright (c) 1982, 2010, Oracle. All rights reserved.

ERROR:
ORA-01017: invalid username/password; logon denied

修改服务器端 sqlnet.ora 后,需要重新登录sqlplus,再修改用户密码,否则修改用户密码后,标记的密码版本仍然为11G 12C;重新登录sqlplus,修改scott用户密码,并查看 PASSWORD_VERSIONS,多了一个 10G

[oracle@shard1 ~]$ sqlplus sys/abcd@shardcat as sysdba

SQL*Plus: Release 12.2.0.1.0 Production on Mon Feb 17 13:07:28 2020

Copyright (c) 1982, 2016, Oracle. All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL> alter user sys identified by "abcd";

User altered.

SQL> select username, account_status,password_versions from dba_users where account_status='OPEN';

USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
------------------------------ ---------------------------------------------------------------- ----------------------------------
SYS OPEN 10G 11G 12C
SYSTEM OPEN 11G 12C
GSMCATUSER OPEN 11G 12C
JY OPEN 11G 12C
MYGDSADMIN OPEN 11G 12C
APP_SCHEMA OPEN 11G 12C

6 rows selected.
客户端:再次尝试登录oracle 12c,成功:

C:UsersAdministrator>sqlplus sys/abcd@shardcat as sysdba

SQL*Plus: Release 11.2.0.1.0 Production on Sat Dec 20 22:22:39 2014

Copyright (c) 1982, 2010, Oracle. All rights reserved.

Connected to:
Oracle Database 12c Enterprise Edition Release 12.2.0.1.0 - 64bit Production

SQL>
总结:oracle11g 客户端连接 oracle 12c服务器,需要在服务器端配置 sqlnet.ora,并重新修改用户密码。

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
oracle通过job定时执行任务
2013年8月27日 星期二 20:49 在项目中,经常会遇到需要定时完成的任务,比如定时更新数据,定义统计数据生成报表等等,其实这些事情都可以使用Oracle的Job来完成。下面考试大就结合我们实验室项目实际,简单介绍一下在Oracle数据库中通过Job完成自动创建表的方法。   整个过程总共分为两步。虽然整个过程都非常简单,但是对于初学Oracle的生手还是有很多地方需要注意的。
1644 0
Oracle 11g 客户端的安装和配置。
原文: Oracle 11g 客户端的安装和配置。 数据库和客户端在不同的机器之上。 在安装之前,在安装Oracle数据库的服务器上导航到下面的目录。 将listener.ora和tnsnames.ora中的host中的localhost都改为机器的IP地址,我的为192.168.1.102 而后开始安装Oracle客户端 选择定制,可以自己定义安装的组件。
848 0
通过shell脚本监控oracle session
最近数据库碰到了连接紧张的问题,想通过一个脚本对数据库的session情况一目了然。 以下是自己写的脚本。实现的效果如下。 对session的总体情况,那些program主要在占用,每个用户所拥有的session(active,inactive,killed,sniped...)都能够一目了然。
660 0
ArcGIS 客户端跨版本连接Oracle 地理数据库时的兼容性说明
很多用户都会有这样的疑问: 1:我是否可以使用ArcGIS Desktop9.3连接ArcSDE10 2:我是否可以使用ArcGIS 10.
947 0
解决办法:本机远程连接服务器时出现身份验证错误,要求函数不受支持!
在用户名、IP、密码都对的情况下别的电脑能连接上,只有自己的电脑连接不上说函数不受支持 具体解决办法 windows专业版以上: 打开组策略编辑器 选择:计算机配置——管理模板——系统——凭据分配 双击“加密Orac...
1962 0
ORACLE 12C连接时报ORA28040和ORA01017的错误
【一】环境说明 1.1 Oracle服务端版本:12.2.0.1 1.2 Oracle客户端版本:11.2.0.1 【二】问题说明 2.1 客户端连接服务端的时候报ORA-28040的错误。
3792 0
+关注
eric0435
系统架构师(高级工程师),ACOUG&CSOUG核心成员,Oracle Young Expert 。政府信息化技术顾问。湖南省政府采购评审专家,从2007年开始从事社会保险系统开发,应用架构设计,数据库管理工作。擅长Oracle数据库故障诊断,性能调优。
105
文章
0
问答
文章排行榜
最热
最新
相关电子书
更多
《2021云上架构与运维峰会演讲合集》
立即下载
《零基础CSS入门教程》
立即下载
《零基础HTML入门教程》
立即下载