0

现在我刚刚在Windows上安装了Oracle,到目前为止,我已经通过sqlplus和企业管理器GUI成功登录系统和系统用户,并创建了一个新用户。现在,我可以通过企业管理器Web界面与新用户一起登录,但是当我尝试使用sqlplus或sqldeveloepr登录时,出现错误“错误:ORA-01017:invalid username/password; logon denied” 。无法连接Oracle sqldeveloper或sqlplus

我重新输入密码多次,确保不会再犯错误,但我再也无法登录。我只能通过企业管理器web gui与此用户连接。

任何想法,为什么会发生这种情况? :(

Here is the user logged into web EM

Error in sqldeveloper。我得到同样的错误在sqlplus控制台,我觉得奇怪的是,如果我使用任一系统或sys用户,但它连接成功。所以我是新创建的用户缺少角色或特权?

在的SQLDeveloper我试过的情况下,两个“本地主机”和“127.0.0.1”作为东道主,我得到了相同的结果。

+0

什么是你的数据库版本最多。小数点后4位? –

+0

是否有可能忘记提交更改?因此,您只能在公开会话中看到用户。另一个想法 - 这个新用户有什么特权?授予连接,创建会话,imp_full_database为;可以解决问题。 – mcane

+0

@mcane我已经注销并通过web gui与新用户重新登录,它工作正常,它只是与sqlplus和sqldeveloper,我有isssues :(我会尝试授予连接和创建会话一旦我回家,我现在在工作:)谢谢。 – stigma

回答

0

也许你没有足够的权限试试这个:

grant connect, create session to <user>; 
+0

我会尝试授予这些特权,看看它是否有效 – stigma

+0

这没有奏效:(我仍然收到“错误:ORA-01017: 。无效的用户名/密码;登录被拒绝” – stigma

0

好吧..它似乎现在工作,至少与sqldeveloper。显然我需要在尝试连接时使用服务名称而不是SID,至少这是我在此基础上通过“thatjeffsmith”的答案尝试的:ora-12505 error while connecting via SQL Developer

我想授予connect和create session也有帮助。

同样在服务名称上,我输入了容器名称?对于我的情况下的可插拔数据库是“p oraclepredb”容器是“oraclepredb”。现在我可以连接sqldeveloper。尽管如此,我仍然不确定如何与sqlplus连接,因为我无法“告诉”它使用了哪个SID /服务。有关于此的任何想法?

更新:我终于能使用语法用sqlplus登录:

sqlplus <user>/<password>@<host>:<port>/<database> 

在我的案件的“数据库”我输入我的可插拔数据库的名称。

同样,当sqlplus中要求输入用户名,输入可以做到:

<user>/<password>@<host>:<port>/<database> 

这个缺点是,密码是可见的,每当我登录

+0

在Linux中: ORACLE_SID = 出口ORACLE_SID 回声$ ORACLE_SID – mcane

+0

以上三个命令类似的应该是SERVICE_NAME如果你认为授予权限的帮助下,你可以在上投票回答。 – mcane