首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >"ORA-01017:无效用户名/密码“:为什么?

"ORA-01017:无效用户名/密码“:为什么?
EN

Database Administration用户
提问于 2013-03-11 05:18:27
回答 2查看 36.1K关注 0票数 0

这两者之间有什么区别:

代码语言:javascript
复制
SQLPLUS / AS SYSDBA

代码语言:javascript
复制
SQLPLUS
Enter user-name: SYSDBA
Enter password:

如果我使用第一个命令,就会连接并看到提示符SQL>,但是在使用第二个命令时,当输入正确的密码时,我总是得到ORA-01017: invalid username/password; logon denied。这是为什么?

此外,当我没有输入任何密码时,如何使用第一个命令作为SYSDBA连接。

我正在使用Oracle数据库11g速成版11.2.0.2.0版本

EN

回答 2

Database Administration用户

回答已采纳

发布于 2013-03-11 09:30:49

SYSDBA是一个角色。当您使用该角色进行连接时,您实际上是以用户SYS的身份进行连接(例如,在SQL*Plus中使用show user )。正如@A.B.Cade已经说过的,您正在使用外部身份验证(在本例中是OS ),但是如果您想通过网络远程连接,则需要提供用户名和密码(除非帐户被配置为使用远程OS身份验证),例如sqlplus sys/password@orcl as sysdba

您还可以授予其他用户SYSDBA特权:

代码语言:javascript
复制
sql> GRANT SYSDBA to SCOTT;

通过这种方式,用户SCOTT能够以SYS权限连接到数据库:

代码语言:javascript
复制
[spongebob@example]$ echo "show user" | sqlplus -S scott/password as sysdba
USER is "SYS"
票数 3
EN

Database Administration用户

发布于 2013-03-11 06:21:57

SYSDBA不是用户,而是连接到DB的一种方式。

作为sysdba连接是基于OS身份验证的,这意味着只要您用oradba组中的用户连接到您的计算机,您将与该用户连接,而不是AS SYSDBA,您将编写什么样的用户/密码(当然,只要您尝试以sysdba的形式连接)。

这是汤姆·凯特的线中阅读更多内容

所以,这个-

代码语言:javascript
复制
SQLPLUS / AS SYSDBA

还有这个

代码语言:javascript
复制
SQLPLUS a/b AS SYSDBA

即使是这个

代码语言:javascript
复制
SQLPLUS
Enter user-name: as SYSDBA
Enter user-name: a
Enter password: b

几乎都一样

票数 4
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/36350

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档