使用SQL PLUS客户端版本11.1从SQL PLUS连接到oracle 12c DB时,ORA-28040没有匹配的身份验证协议

使用SQL PLUS客户端版本11.1从SQL PLUS连接到oracle 12c DB时,ORA-28040没有匹配的身份验证协议,oracle,authentication,protocols,Oracle,Authentication,Protocols,在尝试从sqlplus连接oracle 12c远程数据库时,我得到了ORA-28040,而在使用SQL developer(基本连接和TNS连接)连接到同一数据库时,我能够成功连接。我还注意到,我能够从本地网络上的sql plus连接到12c数据库,但这个问题只与远程数据库服务器有关 我已经在客户端sqlnet.ora文件中尝试了以下设置 SQLNET.AUTHENTICATION_SERVICES = (NTS) SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8

在尝试从sqlplus连接oracle 12c远程数据库时,我得到了ORA-28040,而在使用SQL developer(基本连接和TNS连接)连接到同一数据库时,我能够成功连接。我还注意到,我能够从本地网络上的sql plus连接到12c数据库,但这个问题只与远程数据库服务器有关

我已经在客户端sqlnet.ora文件中尝试了以下设置

SQLNET.AUTHENTICATION_SERVICES = (NTS)
SQLNET.ALLOWED_LOGON_VERSION_CLIENT = 8
SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8

但是运气不好。

基本问题是您试图使用不受支持的客户端和服务器组合。当12c使用新的密码加密算法时,实际错误会出现。在客户端SQLNET.ora文件中设置SQLNET.ALLOWED\u LOGON\u VERSION\u SERVER无法工作。错误是由服务器端引起的。因此,需要相应地更改服务器的sqlnet.ora文件。

谢谢Steve。我想另一个选择是将sqlplus的客户端版本更新为12?我使用的是SQL developer版本17.3,它支持客户端和服务器的组合,因此我能够从SQL developer建立连接。但我仍然无法理解为什么我能够从同一个sqlplus版本通过局域网连接到本地开发环境12c数据库?是的,将客户端更新到12c也可以。SQL developer和sqlplus可能使用不同版本的SQL客户端。