密码区分大小写

Ora-01017 When Connecting As Sysoper/Sysdba To A 11g Database (Doc ID 1101584.1)
也是从11.2开始:
在10G 中是没有这种情况的
例10G:     -- 不区分大小写
SQL> create user tt identified by TT
  2  ;


User created.


SQL> grant create session to tt;


Grant succeeded.


SQL> conn tt/tt
Connected.
SQL> conn tt/TT
Connected.
SQL> select * from v$version;


BANNER
--------------------------------------------------------------------------------
Oracle Database 10g Enterprise Edition Release 10.2.0.4.0 - 64bi
PL/SQL Release 10.2.0.4.0 - Production
CORE    10.2.0.4.0      Production
TNS for Linux: Version 10.2.0.4.0 - Production
NLSRTL Version 10.2.0.4.0 - Production




11G:    ---默认区分大小写
SQL> create user tt identified by TT
  2  ;


用户已创建。


SQL> grant create session to tt;


授权成功。


SQL> conn tt/tt
ERROR:
ORA-01017: invalid username/password; logon denied




警告: 您不再连接到 ORACLE。
SQL> conn tt/TT
已连接。
SQL> select * from v$version; 


BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - 64bit Production
PL/SQL Release 11.2.0.1.0 - Production
CORE    11.2.0.1.0      Production
TNS for Linux: Version 11.2.0.1.0 - Production
NLSRTL Version 11.2.0.1.0 - Production


从文档 How To Check The Value For the Parameter IGNORECARE In The Password File (Doc ID 1379947.1) 中也可以看出来 。
此文档中也介绍了在12C时 查看是密码文件是不是区分大小写的方法:
[oracle@localhost dbs]$ cd $ORACLE_HOME/dbs
[oracle@localhost dbs]$ orapwd describe file=orapw$ORACLE_SID
Password file Description : format=12 ignorecase=N




APPLIES TO:


Oracle Database - Enterprise Edition - Version 11.2.0.2 to 12.1.0.1 [Release 11.2 to 12.1]
Information in this document applies to any platform.
GOAL


How to check if the password file was created using


orapwd file=orapwTEST01 password=Welc0me1 ignorecase=n


or


orapwd file=orapwTEST01 password=Welc0me1 ignorecase=y






SOLUTION


Up to version 11gR2:


Before 12c there is no any easy way to check if ignorecase=n or ignorecase=y were used to create the password file, since the password file is encrypted and the information is not available in the database.


The only way to check it,  is to test it using different passwords:


sqlplus sys/manager@PROD as sysdba
Connected.




sqlplus sys/MANAGER@PROD as sysdba
ERROR:
ORA-01017: invalid username/password; logon denied






Since it is obvious that the case of the password matters it is quite clear that the password file was created using the following command:


 


orapwd file=orapwPROD password=manager ignorecase=n


If the password file would have been created with the following command then the case of the letters in the password would not have been important:


orapwd file=orapwPROD password=manager ignorecase=y


 Both sqlplus connections work fine:




sqlplus sys/manager@PROD as sysdba -> connected
sqlplus sys/MANAGER@PROD as sysdba -> connected






Versions as of 12c


Since version 12.1.0.1.0 the followng can be used to check the passwordfile using orapwd describe :


[oracle@localhost dbs]$ cd $ORACLE_HOME/dbs
[oracle@localhost dbs]$ orapwd describe file=orapw$ORACLE_SID
Password file Description : format=12 ignorecase=N
















Ora-01017 When Connecting As Sysoper/Sysdba To A 11g Database (Doc ID 1101584.1)




In this Document
  Symptoms
  Cause
  Solution
  References


APPLIES TO:


Oracle Server - Enterprise Edition - Version: 11.1.0.7 and later   [Release: 11.1 and later ]
Information in this document applies to any platform.
SYMPTOMS


When attempting to connect as sysoper/sysdba with a new user the following error occurs.
试图用新sysoper/sysdba 用户登陆时 出现 1017




ERROR
-----------------------
ORA-01017: invalid username/password; logon denied




The issue can be reproduced with the following steps:




SQL> create user TEST identified by MANAGER;
SQL> grant connect, sysoper, dba to TEST;
SQL> connect TEST/manager@V11G as sysoper


ERROR:
ORA-01017: invalid username/password; logon denied




CAUSE


The Password file is case sensitive. It was created by default using ignorecase=n.
密码文件是大小写敏感的的,创建时默认是 ignorecase=n 不忽略大小写
SOLUTION
解决方法 :
1) Change user's password and make sure that the letters are all lowercase
改用户密码,都是小写的
or


2) Re-create the password file using
重新建 密码文件 加上 ignorecase=y 
orapwd file=orapw password= entries= ignorecase=y 

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

转载于:http://blog.itpub.net/25099483/viewspace-1084874/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值