问题描述:ORA-28040原因是由于应用程序或CLIENT的jdk版本与12c的版本不一致导致
解决方法:
方法一: 直接安装12c客户端,并且升级应用程序(可能性不大)
方法二:
1.修改sqlnet.ora后,重启监听,再修改一次密码即可。
SQLNET.ALLOWED_LOGON_VERSION_SERVER=8 #控制客户端版本连接到12c数据库(client —>12c db )
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8 #控制12c数据库连到客户端版本的数据库(12c db ->client)
注意事项:
(1)无论是单实例或是集群环境,都是在$ORACLE_HOME/network/admin/sqlnet.ora中添加上述内容;
(2)SQLNET.ALLOWED_LOGON_VERSION指的是dba_users.password_versions;
2. 因为上述配置的变更,所以需要重置用户密码,否则即使是账户信息正确也提示登陆失败。通过以下命令修改指定用户的密码:
alter user username identified by "password";