ORA-01017:用户名密码出错 故障实例

sysdba登录 ORA-01017:用户名密码出错 故障排查实例

早上接到一个朋友的急call,说是数据库的sys登录不了系统叻。普通用户连接可以登录,只要是as sysdba就提示ORA-01017:用户名密码出错。

很显然这是一个典型的sysdba登录的问题。

首先要他查看了sqlnet文件。SQLNET.AUTHENTICATION_SERVICES= (NONE) 启动密码文件验证了,

接着查看$ORACLE_HOME/dbs/下有没有orapw$ORACLE_SID的文件,确定有。

接着查看remote_login_passwordfile的值,我估计这时他的值一定是NONE,而不是EXCLUSIVE

不过怎么来确定这个推断了。remote_login_passwordfile是init的参数,我们可以通过show parameters remote_login_passwordfile来查看,也可以直接查看spfile文件,spfile虽然是二进制文件,不过里面的内容是看到文本的

more $ORACLE_HOME/dbs/spfile$SID.ora.

最后发现确实remote_login_passwordfile=none。

现在问题大致上应该确定了,就是remote_login_passwordfile的设置问题了。开始着手解决,先屏蔽掉sqlnet.ora里SQLNET.AUTHENTICATION_SERVICES= (NONE)使得本机的 sqlplus “/ as sysdba” 可以进去

SQL>startup mount

SQL>show parameters remote_login_passwordfile;

这时出来的值是none,修改值为exclusive

SQL>alter system set remote_login_passwordfile=EXCLUSIVE scope=spfile;

SQL>shutdown immediate

SQL>startup

SQL>select * from v$pwfile_users;

看有没有结果出来,一切OK。

现在登录,远程和本机都已经OK叻。

朋友这时候才想起来,前几天自己在设置sysdba远程的时候,试到这里就放下来了,而后一直都没有用远程登录,知道今天用远程登录才发现出现这个问题。

这个问题还有一个很快的方式,自己找到init.ora里remote_login_passwordfile那行,在后面加上EXCLUSIVE。然后从pfile启动就可以了。

SQL>startup pfile=’$ORACLE_BASE/admin/$ORACLE_SID/pfile/init.ora’;

====================================================================================
Inthirties关注Oracle数据库 优化,安全,备份,恢复,迁移

如果你需要帮助或想和我一起学习的请联系
联系方式QQ:370140387
QQ群: 85837884(注明:数据库)
电子邮件:dba@Inthirties.com
网站: http://www.inthirties.com

[@more@]

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/21507788/viewspace-1021710/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/21507788/viewspace-1021710/

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: Oracle 12c是一种强大的数据库管理系统,它可以让用户轻松地管理和维护数据库。然而,有时候会出现ORA-01017错误,提示“用户名/口令无效; 登录被拒绝”。 这个错误通常是由于登录信息(用户名和口令)无效导致的。这可能是因为输入的用户名或口令不正确,或者由于数据库管理员更改了登录凭据而导致登录失败。解决这个问题的方法是正确输入用户名和口令,或者联系数据库管理员以获取正确的凭据。 此外,还有一些其他可能导致ORA-01017错误的原因。例如,数据库可以配置为只允许连接来自某些IP地址或主机名的客户端。如果您没有在连接字符串中正确指定这些参数,则可能无法连接到数据库并出现此错误。解决办法是检查连接字符串并指定正确的参数。 总之,ORA-01017错误可能是由多种原因导致的,但通常可以通过检查登录凭据和连接字符串来解决问题。如果您无法解决问题,请联系数据库管理员以获取帮助。 ### 回答2: ORA-01017Oracle数据库发生登录错误时的错误代码,错误信息为用户名/口令无效,登录被拒绝。通常,这种错误是由以下情况引起的。 首先,可能是由于输入的用户名密码不正确,导致登录失败。在此情况下,应该仔细检查输入的用户名密码是否正确,对大小写敏感,确保输入正确。 其次,可能是Oracle数据库中没有该用户的登录权限,或者没有分配合适的角色和权限。在这种情况下,应该检查该用户是否被授权访问数据库,并确保正确的角色和权限分配。 最后,这种错误可能是因为数据库配置问题,比如说数据库实例或服务没有启动。在这种情况下,应该检查数据库是否正常运行,确保数据库实例或服务已经正确启动。 综上所述,ORA-01017错误通常是由于输入错误用户名密码、没有登录权限或数据库未正常运行等问题引起的。对于这种错误,我们需要检查输入的用户名密码是否正确、该用户是否被授权访问数据库、数据库是否正常运行等,以确定解决方法。 ### 回答3: “oracle 12c ora-01017: 用户名/口令无效; 登录被拒绝。”这个错误提示意味着用户输入的账号或者密码不正确,导致登录被拒绝。当出现这种错误时,需要首先检查输入的用户名和口令是否匹配,并且注意大小写是否正确。 在检查账号和密码之后,还需要确保数据库实例已经启动,并且监听器也已经启动。如果数据库实例或者监听程序未启动,会出现无法连接到数据库的情况。因此,需要确保相应的服务都已经启动。 此外,如果用户尝试连接到一个不存在的数据库或者使用错误的连接字符串,也有可能导致登录被拒绝。需要检查连接字符串是否正确,并且确保数据库实例名称和监听器名称也正确。 如果以上步骤都已经检查过,并且仍然无法登录,那么可能是由于权限问题或者安全策略导致的。需要检查用户是否具有正确的权限,并且确保数据库的安全策略不会阻止该用户的登录。 总之,当出现“oracle 12c ora-01017: 用户名/口令无效; 登录被拒绝”错误提示时,需要逐步排查以上问题,以确定错误原因并解决问题。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值