我正在尝试从具有9i(v9.2.0.1)客户端的PC连接到11g(v11.2.0.1.0)上的架构。它似乎可以很好地连接到某些模式,但不是这个 - 它每次都会出现ORA-01017 Invalid Username/Password
错误。
用户名和密码是完全正确的 - 任何人都可以想到为什么这不起作用的原因?
9i和11g之间是否有任何根本的不兼容性?
答案 0 :(得分:39)
用户和密码绝对不正确。 Oracle 11g凭据区分大小写。
尝试ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE; 并改变密码。
http://oracle-base.com/articles/11g/case-sensitive-passwords-11gr1.php
答案 1 :(得分:10)
前段时间我有类似的问题。你必须小心引号和双引号。建议使用管理员凭据重置用户密码。
ALTER USER user_name IDENTIFIED BY new_password;
但不要在两个参数中使用双引号。
答案 2 :(得分:9)
对于oracle版本12.2.x,用户无法使用不区分大小写的密码登录,即使SEC_CASE_SENSITIVE_LOGON = FALSE,如果用户的PASSWORD_VERSIONS不是10g。
以下sql应该为用户显示PASSWORD_VERSIONS。
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 11G 12C
使PASSWORD_VERSIONS与10g兼容
在数据库的sqlnet.ora中添加/修改行以获得SQLNET.ALLOWED_LOGON_VERSION_SERVER = 8 重启数据库 更改/过期现有用户的密码 创建的新用户也将具有相同的设置 在上面的步骤之后PASSWORD_VERSIONS应该是这样的
select USERNAME,ACCOUNT_STATUS,PASSWORD_VERSIONS from dba_users;
USERNAME ACCOUNT_STATUS PASSWORD_VERSIONS
--------------- -------------- -----------------
dummyuser OPEN 10G 11G 12C
答案 3 :(得分:8)
如果所有其他方法都失败了,请尝试将密码重置为相同的内容。我遇到此错误并无法解决此问题,但只需将密码重置为相同的值即可解决问题。
答案 4 :(得分:3)
我遇到了同样的错误,但是当我连接时,脚本中的其他先前语句在之前运行正常! (所以连接已经打开,一些成功的语句在自动提交模式下运行正常) 该错误可重现几分钟。然后它刚刚消失了。 我不知道某个人或某个内部机制是否在这段时间内做了一些维护工作或类似工作 - 也许。
我的环境的更多事实:
sys as sysdba
all_tables
,all_views
阅读,并为其他用户授予选择 答案 5 :(得分:2)
我遇到了同样的问题,并在用户名和密码周围添加双引号,并且它有效: 使用“TEST”创建由“opps”标识的公共数据库链接“opps”;
答案 6 :(得分:1)
我不是专家。如果您在尝试从Oracle 11g中的SQL Developer连接HR模式时获得ORA-01017 请尝试解锁HR,如下所示
更改由hr标识的用户HR DEFAULT表空间用户 临时表空间临时 帐户解锁;
答案 7 :(得分:1)
我遇到了类似的问题。我使用的 id/pw 是正确的,但我只在一个特定连接上获得 ORA-01017 Invalid Username/Password
。
事实证明,我在 Oracle SQL Developer 中的连接设置在“代理用户”选项卡中打开了“使用数据库代理身份验证”。好久没注意到了。
在我取消选中该选项后,它工作正常。
答案 8 :(得分:1)
您可以使用sqlplus连接到Oracle数据库:
sqlplus "/as sysdba"
然后创建新用户并分配权限。
grant all privileges to dac;
答案 9 :(得分:1)
最近我在Oracle 12c中也遇到了类似的问题。我更改了所使用的ojdbc jar版本后,它得到解决。用ojdbc6 jar替换了ojdbc14。
答案 10 :(得分:0)
在我使用 tableplus build 373 on my m1 device
的 oracle 数据库的情况下
在另一个文本编辑器中输入用户名和密码,copy and paste
在 tableplus 中输入用户名和密码。当我输入 in tableplus the text automatically changes to lowercase
时。因为我对 sqldeveloper 没有问题,但是在尝试 tableplus 时它总是拒绝,现在我已经解决了。我不知道为什么它会在应用程序或其他方面出现问题,但我已经通过技巧解决了。
答案 11 :(得分:0)
Oracle 11 G和12 C版本建议使用更复杂的密码,尽管在用户创建过程中没有问题。密码必须为字母数字和特殊字符。
验证用户的密码版本和状态:
select * from dba_users where username = <user_name>;
在11G 12C的情况下,将其修改如下:
alter user <user_name> identified by Pass2019$;
现在正在测试连接!
答案 12 :(得分:0)
凭据可能是正确的,还有其他错误。我将可插拔DB 连接字符串基于其容器数据库。而不是原来的parent.example.com
服务名称,而正确的似乎是pluggable.example.com
。
答案 13 :(得分:0)
最近我在Oracle 12c上遇到了类似的问题。我创建了一个具有小写密码的新用户,并且能够从数据库服务器正常登录,但所有客户端都失败了ORA-01017。 该修复程序最终变得简单(将密码重置为大写)但是为了实现这一目标需要付出很多努力。
答案 14 :(得分:0)
我知道这个帖子大约是11g,但是12c客户端中如何加密密码的错误可能是这个错误的责任,如果你决定使用那个和你:
ALTER SYSTEM SET SEC_CASE_SENSITIVE_LOGON = FALSE
并重置密码但仍然无效),ORACLE_HOME
,PATH
,TNS_ADMIN
),TNS_ADMIN
处的HKLM\Software\Oracle\KEY_OraClient12Home
注册表字符串已到位,所有基本检查。
修复:尝试在注册表(regedit)中将HKLM\System\CurrentControlSet\Control\Lsa\FIPSAlgorithmPolicy\Enabled
设置为0
以禁用FIPS。
Oracle.ManagedDataAccess and ORA-01017: invalid username/password; logon denied
ORA-01005 error connecting with ODP.Net
https://community.oracle.com/thread/2557592?start=0&tstart=0
答案 15 :(得分:0)
通过代理用户通过odp.net连接时,我也收到了相同的sql错误消息。
我的错误是我的用户是用引号创建的(例如“rockerolf”)然后我还必须在connectionstring中指定我的用户为User Id = \“rockerolf \”..
最后,我最终删除了带引号的用户并创建了一个没有..
的新用户面掌
答案 16 :(得分:0)
关于Oracle OTN的提示= 当您尝试连接时,请勿在TOAD中键入密码,并为其输入弹出 对话框。 在那里输入密码,它会起作用。不知道他们在TOAD中用密码做了什么,但这是一种解决方法。它与11g中的区分大小写的密码有关。我认为如果你将密码更改为全部大写,它将适用于TOAD。 https://community.oracle.com/thread/908022