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