Oracle 低版本客户端连接19C报错ORA-28040

问题现象:

如使用Oracle11.2客户端连接Oracle 19c的时候,报错:

ORA-28040: No matching authentication protocol

ORA-28040: 没有匹配的验证协议


问题原因:

原因客户端与服务器段的密码生成版本(dba_users.password_versions)不一致导致

Effect of SQLNET.ALLOWED_LOGON_VERSION_SERVER on Password Version Generatio
SQLNET.ALLOWED_LOGON_VERSION_SERVER Setting8111212a

Server runs in Exclusive Mode

No

No

Yes

Yes

Generate the 10G password version

Yes

Yes

No

No

Generate the 11G password version

Yes

Yes

Yes

No

Generate the 12C password version

Yes

Yes

Yes

Yes

 

 

 

 

 

 

解决方法:

在数据库服务器上的$ORACLE_HOME/network/admin/sqlnet.ora文件添加相应参数

注:单实例或RAC都是此目录的sqlnet.ora文件

Oracle12c以下版本

SQLNET.ALLOWED_LOGON_VERSION=##

Oracle12c及以上版本

SQLNET.ALLOWED_LOGON_VERSION_SERVER=##

SQLNET.ALLOWED_LOGON_VERSION_CLIENT=##

两者区别

SQLNET.ALLOWED_LOGON_VERSION_SERVER:控制可以连接到12c数据库的客户端版本(client -->12c server

SQLNET.ALLOWED_LOGON_VERSION_CLIENT:控制12c数据库可以连到哪些版本的数据库(12c server  -->其它版本dbserver),例如:控制通过DB LINK可连接到哪些版本的oracle库。

添加参数以后无需重启数据库或监听,但需要重置数据库用户密码,否则会报错

ORA-01017: 用户名/口令无效; 登录被拒绝

在数据库服务器使用sys登录并修改密码

修改完数据库用户密码后再重新登录,搞定


 

  • 5
    点赞
  • 25
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值