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

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

虽然在sqlnet.ora加SQLNET.ALLOWED_LOGON_VERSION=8 可以解决,

但由于这个参数在12c已经废弃了,如果继续使用,会在alert/log.xml无穷无尽的报“Using deprecated SQLNET.ALLOWED_LOGON_VERSION parameter.”

因此,正确的做法是在$ORACLE_HOME/network/admin/sqlnet.ora加

SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

区别如下:
SQLNET.ALLOWED_LOGON_VERSION_SERVER:控制可以连接到12c数据库的客户端版本(client —>orace 12c db )
SQLNET.ALLOWED_LOGON_VERSION_CLIENT:控制12c数据库可以连到哪些版本的数据库(orace 12c db —>其它版本的oracle db),例如:控制通过DB LINK可连接到哪些版本的oracle库。

特别需要注意:
如果是RAC,因为RAC是使用grid的监听器,因此很多人以为是在“/u02/app/12.1.0/grid/network/admin/sqlnet.ora” 加“SQLNET.ALLOWED_LOGON_VERSION_SERVER=8”,其实这是错的,而是仍然在$ORACLE_HOME/network/admin/sqlnet.ora加“SQLNET.ALLOWED_LOGON_VERSION_SERVER=8”

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

问题描述:

使用sqlplus 和 sql developer可以登录,但是使用navicat或程序连接时总是提示ORA-01017: 用户名/口令无效; 登录被拒绝,反复确认输入的用户名和密码,但是仍然提示以上错误。

处理过程:

通过大量网上查找,没找到可行的结果,无意中看到oracle设置密码大小写不敏感,于是怀疑可能和我设置的密码中有字母的缘故

修改密码: alter user bsdbank identified by 123456;

或使用sql developer

将原密码设置成123456,再使用navicat可以连接,然后再改回原密码,使用navicat也可以连接。可能初次创建用户时会出现这样的问题。至于出现这种问题后直接设置大小写不敏感是否能直接解决问题,暂未尝试

补充:oracle设置大小写不敏感步骤

SQL>  show parameter sec_case_sensitive_logon
NAME                                 TYPE
------------------------------------ ----------------------
VALUE
------------------------------
sec_case_sensitive_logon             boolean
TRUE
SQL> alter system set sec_case_sensitive_logon = false;
系统已更改。
SQL>  show parameter sec_case_sensitive_logon
NAME                                 TYPE
------------------------------------ ----------------------
VALUE
------------------------------
sec_case_sensitive_logon             boolean
FALSE

  

 


原文链接:https://blog.csdn.net/beihuanlihe130/article/details/108363193

posted @ 2021-02-27 13:12  孤夏  阅读(3723)  评论(0编辑  收藏  举报