No matching authentication protocol解决12c数据库连接问题:

    xiaoxiao2025-08-06  17

    1:问题描述

    应用监控程序报No matching authentication protocol,无法登陆数据库

    2:参考网站:

    https://www.cnblogs.com/lhrbest/p/6219687.html

    3:问题处理

    1:12c与11g的区别

    使用oerr命令来查看,在Oracle 11g下:

    [oracle@orcltest ~]$ oerr ora 28040

    28040, 0000, "No matching authentication protocol"

    // *Cause:  No acceptible authentication protocol for both client and server

    // *Action: Administrator should set SQLNET_ALLOWED_LOGON_VERSION parameter

    //          on both client and servers to values that matches the minimum

    //          version supported in the system.

    [oracle@orcltest ~]$

     

    12c下:

    oracle@HQsPSL-PSCV-R02:/oracle/app/oracle> 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

    可以看到,该参数在11g和12c下的解决方案是不同的。

    查询了一下参数SQLNET.ALLOWED_LOGON_VERSION,发现该参数在12c中以废弃,而是采用SQLNET.ALLOWED_LOGON_VERSION_CLIENT和SQLNET.ALLOWED_LOGON_VERSION_SERVER代替

    客户说是之前碰到了ORA-28040: No matching authentication protocol的错误才加上该参数的。

    解决:在Oracle用户(不是grid用户)下,将$ORACLE_HOME/network/admin/sqlnet.ora文件原来的SQLNET.ALLOWED_LOGON_VERSION=8注释掉(如果没有sqlnet.ora文件,那么就创建一个),修改为如下的行:

    SQLNET.ALLOWED_LOGON_VERSION_SERVER=8

    SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

     2:此时可连接进行查看,且因为登陆账号被锁,密码错误,则进行修改解锁切且修改密码后可以进入

    alter user testOracle2019 account unlock;  -------解锁账户 alter user testOracle2019 identified by testOracle2019 ; -------------修改密码 附一个连接的驱动包:

    https://download.oracle.com/otn/utilities_drivers/jdbc/121010/ojdbc7.jar

    附:idea连接oracle方法

     

     

    最新回复(0)