• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    Oracle用户密码含有特殊字符导致无法登陆解决方法

    今天碰到一个比较奇怪的问题:
    在客户端上使用sqlplus用普通用户可以登录,但是system以及sys用户均无法登录,提示ORA-12154: TNS: 无法解析指定的连接标识符
    SQL> conn system@webdata
    输入口令:
    ERROR:
    ORA-12154: TNS: 无法解析指定的连接标识符
    SQL> conn xgplat@webdata
    输入口令:
    已连接。
    本来以为客户端是32位的缘故,就在oracle服务器上用sqlplus登录,也还是一样
    SQL> conn system@webdata
    Enter password:
    ERROR:
    ORA-12541: TNS:no listener
    SQL> conn xgplat@webdata
    Enter password:
    Connected.
    问了一些人大家都比较迷糊,搞不清什么问题。偶然看到有人说是不是和密码文件有关,这时我才想到我的system/sys用户的密码中都包含一个@字符。
    比如我的密码是123@456,那使用sqlplus登录的时候就理解成sqlplus system/123@456@webdata,这样sqlplus就理解成123后面的就是数据库的连接字符串,这样自然就报错并提示TNS: 无法解析指定的连接标识符或no listener
    之后在服务器上用sqlplus / as sysdba登录后修改sys/system的密码,再次尝试就一切正常了

    当Oracle数据库用户的密码含特殊字符如 @ 时,直接使用正常的密码输入,由于oracle将@后的字符解析为网络服务名而导致登陆失败
    如下演示 用户名为:wang密码为:oracle@1网络服务名为:sun 的情况:

    Linux平台:'wang/"oracle@1"'@sun --1个双引号扩密码,1个单引号扩 用户名+密码,即: '用户名/"密码"'@服务名
    [11:41:14oracle@dvd adump]$sqlplus wang/oracle@1@sun
    SQL*Plus: Release 11.2.0.1.0 Production on Tue Oct 30 11:41:24 2012
    Copyright (c) 1982, 2009, Oracle. All rights reserved.
    ERROR:
    ORA-12532: TNS:invalid argument
    [11:42:24oracle@dvd adump]$sqlplus 'wang/"oracle@1"'@sun --1个双引号扩密码,1个单引号扩 用户名+密码,即: '用户名/"密码"'@服务名
    SQL*Plus: Release 11.2.0.1.0 Production on Tue Oct 30 11:42:25 2012
    Copyright (c) 1982, 2009, Oracle. All rights reserved.
    Connected to:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    With the OLAP and Data Mining options
    wang@SUN>

    Windows 平台:wang/"""oracle@1"""@sun--3个双引号扩密码,即: 用户名/"""密码"""@服务名
    C:\Users\wanglei.ITADMIN>sqlplus wang/oracle@1@sun
    SQL*Plus: Release 11.2.0.1.0 Production on 星期二 10月 30 13:20:00 2012
    Copyright (c) 1982, 2010, Oracle. All rights reserved.
    ERROR:
    ORA-12154: TNS: 无法解析指定的连接标识符
    请输入用户名:
    C:\Users\wanglei.ITADMIN>sqlplus wang/"""oracle@1"""@sun--3个双引号扩密码,即: 用户名/"""密码"""@服务名
    SQL*Plus: Release 11.2.0.1.0 Production on 星期二 10月 30 13:20:30 2012
    Copyright (c) 1982, 2010, Oracle. All rights reserved.
    连接到:
    Oracle Database 11g Enterprise Edition Release 11.2.0.1.0 - Production
    With the OLAP and Data Mining options

    您可能感兴趣的文章:
    • Oracle数据库用户的密码过期时间如何修改为永不过期
    • Oracle 用户密码有效期的sql语句
    • 修改oracle数据库用户名及密码的方法
    • oracle忘记sys/system/scott用户密码的解决方法
    • Oracle的默认用户密码
    • Oracle 添加用户并赋权,修改密码,解锁,删除用户的方法
    • 提升Oracle用户密码安全性的策略
    上一篇:ORA-28002 Oracle 11g存在密码过期问题解决方案
    下一篇:oracle 11g em重建报唯一约束错误解决方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    Oracle用户密码含有特殊字符导致无法登陆解决方法 Oracle,用户,密码,含有,特殊,