oracle19C 密码包含特殊字符@ 导致ORA-12154

oracle 19C 密码包含特殊字符@ 出现登录失败,针对此问题一次说个明白
ORA-12154: TNS:could not resolve the connect identifier specifiedoracle19C 密码包含特殊字符@ 导致ORA-12154_第1张图片

Oracle 19c之前密码是可以包含@特殊字符,但是如果包含特殊字符需要双引号
比如oracle11g 正常
如果密码包含特殊字符的加双引号
oracle19C 密码包含特殊字符@ 导致ORA-12154_第2张图片
oracle19C 密码包含特殊字符@ 导致ORA-12154_第3张图片

Oracle 12C 正常
oracle19C 密码包含特殊字符@ 导致ORA-12154_第4张图片

但是到19C如果包含特殊字符则会报错
ORA-12154: TNS:could not resolve the connect identifier specified
oracle19C 密码包含特殊字符@ 导致ORA-12154_第5张图片

但是测试如果@后不跟特殊字符是可以登陆的(不在@前后跟着特殊字符)
如特殊字符不在一起
oracle19C 密码包含特殊字符@ 导致ORA-12154_第6张图片

如只包含一个@特殊字符
oracle19C 密码包含特殊字符@ 导致ORA-12154_第7张图片

但是如果两个包含连续的特殊字符@!,@# 则会报错
oracle19C 密码包含特殊字符@ 导致ORA-12154_第8张图片

原因 Bug 31628975 - SQL*PLUS COMMAND LINE ERROR WHEN AN “@” CHARACTER IS PRESENT IN PASSWORD

ORA-12154: Cannot Connect to SQLPLUS When Username or Password Contains “@” Special Character (Doc ID 2761789.1)
https://support.oracle.com/epmos/faces/SearchDocDisplay?_afrLoop=439953365313298&_afrWindowMode=0&_adf.ctrl-state=i945eysqj_4oracle19C 密码包含特殊字符@ 导致ORA-12154_第9张图片
oracle19C 密码包含特殊字符@ 导致ORA-12154_第10张图片

文档中的表述有所偏差,仅仅只有@特殊字符没有问题,如果出现@+特殊字符则会出现问题;文档中表述该问题在23.1被修复,实际上经过测试19.15已经修复了这个bug

19.15修改该BUG
oracle19C 密码包含特殊字符@ 导致ORA-12154_第11张图片

如下19.20可以正常登陆
oracle19C 密码包含特殊字符@ 导致ORA-12154_第12张图片

19.21可以正常登陆
oracle19C 密码包含特殊字符@ 导致ORA-12154_第13张图片

最后建议oracle 19C在设置密码时不要使用@ 不要使用@ 不要使用@

你可能感兴趣的:(oracle,案例解决,oracle,数据库,linux)