标签: ora-01017

Oracle.ManagedDataAccess和ORA-01017:用户名/密码无效; 登录被拒绝

我在其中一台服务器上遇到了挑战.我有一个ASP.NET MVC 3应用程序,需要连接到Oracle 12c数据库.它使用以下连接字符串执行此操作:

User ID=myuserid;Password=mypass;Data Source=(DESCRIPTION=(ADDRESS_LIST=(ADDRESS=(PROTOCOL=TCP)(HOST=<IP ADDRESS>)(PORT = 1521)))(CONNECT_DATA=(SERVICE_NAME=PDB1)));
Run Code Online (Sandbox Code Playgroud)

我也使用Oracle的Oracle.ManagedDataAccess,版本4.121.1.0.每次尝试连接都会导致以下错误:

ORA-01017: invalid username/password; logon denied
Run Code Online (Sandbox Code Playgroud)

我可以使用上述凭据在我的桌面上成功连接.我在另一台服务器上使用相同的代码,但使用较旧的,未托管的库版本,并且可以使用上述凭据成功连接.但是,我希望运行代码的服务器每次都使用相同的凭据来启动,这些凭据可以在不同的服务器上成功建立连接.

在失败的服务器上,我可以:

  • 通过SQLPLUS连接
  • 用TNSPING命中数据库
  • 创建系统DSN以建立ODBC连接

我已在所有地点检查过TNSNAMES.ORA,看起来它们是正确的.

在多次访问数据库之后,该帐户实际上已锁定,表明我确实在访问数据库并且数据库不喜欢所显示的凭据.我检查了以前成功连接的应用程序,但它们也失败并显示一个错误,表明该帐户已被锁定.解锁帐户导致这些应用程序成功连接,但我遇到问题的服务器除外.

我没办法.

有没有人对可能导致此问题的原因有任何其他建议?

编辑:

我在本地计算机和违规服务器上安装了WireShark.我捕获了桌面和数据库之间以及违规服务器和数据库之间的通信.我发现我的桌面传达了密码:

0080  35 42 31 41 43 34 30 00 01 01 01 0d 0d 41 55 54   5B1AC40......AUT
0090  48 5f 50 41 53 53 57 4f 52 44 01 40 40 43 30 36   H_PASSWORD.@@C06
00a0  37 39 42 31 31 42 46 36 42 41 43 44 39 30 38 …
Run Code Online (Sandbox Code Playgroud)

c# ora-01017 oracle12c odp.net-managed

13
推荐指数
2
解决办法
2万
查看次数

WebSphere到Oracle - 不接受正确的密码

在WebSphere 6.1中,我使用瘦JDBC客户端为Oracle 11g实例创建了一个数据源.

在Oracle中,我有两个用户,一个是现有的,另一个是新创建的.

如果我使用现有用户的组件管理的身份验证别名,则我的websphere数据源是正常的,但如果我使用新用户的别名,则会失败并显示"无效的用户/密码"消息.错误消息是:

The test connection operation failed for data source MyDB (Non-XA) on 
server nodeagent at node MY_node with the following exception: 
java.sql.SQLException: ORA-01017: invalid username/password; 
logon denied DSRA0010E: SQL State = 72000, Error Code = 1,017. 
View JVM logs for further details.
Run Code Online (Sandbox Code Playgroud)

JVM日志中没有任何内容.我已经浏览了所有的websphere日志,他们根本没有提到我的连接.

我可以通过SQLPlus登录或通过SQuirreL登录(以证明JDBC连接正常)来确认用户名和密码是否正确.

我已经在Oracle中检查过新用户拥有现有用户拥有的所有系统权限.

有关正在发生的事情或如何进一步调试的任何想法?

oracle websphere jdbc ora-01017

8
推荐指数
1
解决办法
3万
查看次数

Oracle数据库链接

我目前正在使用Windows身份验证和2台Oracle服务器 - SP3DSMP1和SP3DSMP4.我在SMP1上创建了一个数据库链接以连接到SMP4,如下所示:

SQL>创建公共数据库链接LINK_SMP4 2使用'SP3DSMP4'连接到CURRENT_USER 3;

数据库链接已创建

但是,当我尝试进行查询时,我收到错误:

第1行的错误:ORA-01017:用户名/密码无效; 登录被拒绝

任何想法在这里可能是错的?

oracle oracle10g ora-01017

7
推荐指数
1
解决办法
1309
查看次数

Oracle JDBC:用户名/密码无效 (ora-01017)

我在与 Oracle 数据库服务器的 jdbc 连接上遇到了一个奇怪的问题。

我们在 tomcat 服务器上运行应用程序。这些应用程序使用 oracle 数据库。所有应用程序都使用相同的凭据。

应用程序全天运行良好。晚上没有活动。早上,当应用程序尝试将自身重新连接到数据库时,我们会收到一些(2 或 3 个)ORA-01017(无效的用户名/密码)错误。

然后重新连接即可工作,应用程序将正常运行。

这可以持续几天(大约 5 天),然后阻止一个或多个应用程序!所有重新连接尝试都会失败。

我们跟踪了网络通信,发现如果连接失败,则ORA-01017 NO CREDENTIALS发送到哪里。

当然,晚上没有人接触系统。

一种解决方法是,我们每天早上 6 点重新启动 tomcat 服务器,以清理每个连接缓存或池。这没有帮助。

怎么了?有任何想法吗?

持续 5 天出现完全阻塞的间隔(每天都重复)对我来说看起来很奇怪。

配置

数据库 Oracle 10.2、JDBC Driver 11.2 Thin、tomcat 6.0.24、JDK 6,操作系统为 windows,部分应用程序为 Dialogs for the Avaya Voice Portal 5.0。

我们自己的(非 VP)应用程序使用简单的连接(无池)。


该系统最初安装在 Windows 2003 服务器上,apserver 和 tomcat 服务器之间有 WAN。

现在系统已经迁移到数据库服务器附近的linux(CentOS)服务器上,并且工作正常。不再有 ORA-01017。

java oracle jdbc tomcat6 ora-01017

5
推荐指数
1
解决办法
1万
查看次数

使用bash变量时出现Sqlplus登录错误:SP2-0306:无效选项

我有一个连接到oracle 10g数据库的bash脚本.

在第一步中,它使用以下命令从"config"文件中获取一些变量

. /path/to/my/configfile.ini
Run Code Online (Sandbox Code Playgroud)

在配置文件中有一些变量:

export USRID=myUser
export USRID_PASS=myPassword
export USR_PASS="$USRID/$USRID_PASS@myDatabase"
Run Code Online (Sandbox Code Playgroud)

然后它实际上使用以下命令通过sqlplus连接:

sqlplus -s $usr_pass
Run Code Online (Sandbox Code Playgroud)

抛开可怕的安全和设计问题(这个脚本已经存在了5年).这实际上是在我们的一个UNIX服务器中完成它的工作,而不是在另一个UNIX服务器中.

当我运行脚本时bash -x,我可以看到命令扩展为:

sqlplus -s myUser/myPassword@myDatabase
Run Code Online (Sandbox Code Playgroud)

...应该没问题(并且实际上在一台服务器上工作),但失败服务器中的响应是:

错误:ORA-01017:用户名/密码无效; 登录被拒绝

SP2-0306:无效选项.用法:CONN [ECT] [登录] [AS {SYSDBA | SYSOPER}]其中:: = [/] [@] | SP2-0306:无效选项.

我猜它必须用bash做更多的事情而不是oracle,但我不是bash专家.我缺少一些配置或细节吗?

编辑:

为了解决这个问题,我现在在第三个开发服务器上运行两个版本的脚本,并且在不同的测试中,如果我这样做,登录工作:

sqlplus -s $usrid/$usrid_pass@myDatabase
Run Code Online (Sandbox Code Playgroud)

但不是当我尝试:

sqlplus -s $usr_pass
Run Code Online (Sandbox Code Playgroud)

所以它有点烦人.

除此之外,我将不得不检查te配置文件同步过程...当我得到新的东西时,我会告诉你.谢谢大家.

oracle bash sqlplus ora-01017

4
推荐指数
1
解决办法
4万
查看次数

使用Oracle11g客户端连接到Oracle19C服务器

全部

我正在尝试连接到 Oracle 19C 数据库。我安装了两个 Oracle 客户端(11g 和 12c),因为我们需要支持遗留程序。我可以通过 12c 客户端使用 sqlplus 与任何用户进行连接,没有任何问题。但是如果我对任何用户使用 11g (11.2.0) 客户端。我总是得到:

ERROR:
ORA-01017: invalid username/password; logon denied
Run Code Online (Sandbox Code Playgroud)

两个客户端都有完全相同的 sqlnet.ora 和 tnsnames.ora 文件,因此两个客户端都指向同一个数据库。

任何想法?我需要在 19c 服务器中设置一些特定配置吗?或者我需要在 11g 客户端中进行一些更改吗?这可能吗?

谢谢。

oracle oracle11g ora-01017 oracle12c oracle19c

4
推荐指数
1
解决办法
4万
查看次数

如何使用dbExpress以SYSDBA身份连接到Oracle数据库?

我有一个连接到oracle数据库的Delphi应用程序.

当我尝试以SYSDBA身份登录时,出现错误:

ORA-28009: connection as SYS should be as SYSDBA or SYSOPER
Run Code Online (Sandbox Code Playgroud)

当我尝试使用"SYS AS SYSDBA"用户登录时,出现错误:

ORA-01017: invalid username/password; logon denied
Run Code Online (Sandbox Code Playgroud)

如何使用dbExpress连接以sysdba身份登录?

另见有关ADO的相关帖子

delphi oracle dbexpress ora-01017

3
推荐指数
1
解决办法
2566
查看次数

oracle express sytem无效的登录凭据

我刚刚安装了oracle express,我试图登录数据库主页.与用户sys和system试图用我给在安装密码,但我不能登录消息:在SQL命令行无效的登录凭据尝试连接ORA-01017无效的用户名/密码.登录被拒绝

我不知道如何修改密码或只是尝试卸载并重新安装?

谢谢你的回答.

oracle oracle-xe ora-01017

3
推荐指数
1
解决办法
2万
查看次数