Oracle11g密码区分大小写导致database link无法连接

Oracle11g的密码默认是区分大小写的,该特性通过初始化参数sec_case_sensitive_logon控制,默认TRUE表示区分大小写。但是Oracle11g之前的版本密码都是不区分大小写的,所以在Oracle10g等以前版本创建到Oracle11g的database link时,可能会碰到以下问题:
 
 
10g> create database link oracle11g
2 connect to ning identified by ning
3 using ’11g’;
 
Database link created.
 
10g> select * from v$version@oracle11g;
select * from v$version@oracle11g
*
ERROR at line 1:
ORA-01017: invalid username/password; logon denied
ORA-02063: preceding line from ORACLE11G
 
密码肯定是正确的
 
10g> conn ning/ning@11g;
Connected.
 
11g>
出现这个问题,应该是在10g中创建database link的时候密码是以全部大写的方式使用的,但是11g中的用户密码实际上是小写的。在以前版本中由于不区分大小写,所以没有问题。到了11g问题就出现了,密码不对^_^
 
解决办法
 
1.在创建database link是将用户名和密码都以 双引号引起来,这样密码就是安装输入字符使用的,不会转换成大写
 
10g> create database link oracle11g2
2 connect to “ning” identified by “ning”
3 using ’11g’;
 
Database link created.
 
10g> select * from v$version@oracle11g2;
 
BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 – Production
PL/SQL Release 11.1.0.6.0 – Production
CORE 11.1.0.6.0 Production
TNS for Linux: Version 11.1.0.6.0 – Production
NLSRTL Version 11.1.0.6.0 – Production
 
2.停用Oracle11g区分密码大小写的特性,但是不推荐
 
11g>alter system set sec_case_sensitive_logon=false;
 
System altered
 
10g> select * from v$version@oracle11g;
 
BANNER
——————————————————————————–
Oracle Database 11g Enterprise Edition Release 11.1.0.6.0 – Production
PL/SQL Release 11.1.0.6.0 – Production
CORE 11.1.0.6.0 Production
TNS for Linux: Version 11.1.0.6.0 – Production
NLSRTL Version 11.1.0.6.0 – Production

转载于:https://www.cnblogs.com/daytoday/p/3267740.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值