Oracle 12c:ORA-28040 & ORA-01017

一、ORA-28040

  1. 问题描述
    客户端连接Oracle 12c时,报异常
    ORA-28040: No matching authentication protocol

  2. 问题原因
    Oracle 12c 的参数 SQLNET.ALLOWED_LOGON_VERSION_SERVER、SQLNET.ALLOWED_LOGON_VERSION_CLIENT 默认等于 11,当我们使用 11g JDBC 之前版本的 thin 驱动连接的时候,就会出现该异常

  3. 解决方法

    1. 编辑sqlnet.ora
      SQLNET.ALLOWED_LOGON_VERSION_SERVER=10
      SQLNET.ALLOWED_LOGON_VERSION_CLIENT=10

二、ORA-01017

  1. 问题描述
    客户端连接 Oracle 12c 时,报异常
    ORA-01017: invalid username/password; logon denied

  2. 问题原因
    查询 dba_users,观察 password_version

    select username,account_status,default_tablespace,created,password_versions from dba_users;

    配置sqlnet之前生成的账号依然是只适用于11g以上版本的

  3. 解决方法

    1. 重新配置密码

      ALTER USER username IDENTIFIED BY password;
    2. 验证

      select username,account_status,default_tablespace,created,password_versions from dba_users;
请使用浏览器的分享功能分享到微信等