oracle小技巧-解决特殊密码字符而导致的exp错误

在使用oracle数据库的时候,我们经常会利用exp工具对某些表进行导出。但有些时候,因我们用户密码为安全性设有特殊字符,导致exp导出时候报:"EXP-00056和ORA-12154",今天我们就分享下如何通过设置符号隔离的小技巧解决相应问题。

一、问题现场

1.1,修改用户

我们修改用户密码,使密码带有特殊字符@和.。

1.2,问题出现

我们利用exp开始导出数据

可以看到,我们直接导出,oracle提示错误:EXP-00056: ORACLE error 12154 encountered

ORA-12154: TNS:could not resolve the connect identifier specified。

二、问题解决

如果用户密码中存在特殊字符,特别像@这类等,oracle一般会认为为其内置符号意义,导致密码验证失败。如我们这里,@符号被认定为连接标识符的分割符,而实际上我们并没有这个连接标识符,导致验证失败。

linux中,我们可以通过如下形式进行密码分割,以便解决问题:

exp '用户名/"密码"@连接标识符' file=test.dmp

实测:

可以看到,我们的数据表被实时导出,测试成功。

windows中,我们可以使用如下形式进行密码分割():

exp 用户名/"""密码"""@连接标识符 file=test.dmp

相关推荐
jnrjian12 天前
ORA-01017 查找机器名 用户名 以及library cache lock 参数含义
数据库·oracle
TTc_12 天前
oracle中的union和union all有什么区别?
数据库·oracle
山峰哥12 天前
吃透 SQL 优化:告别慢查询,解锁数据库高性能
服务器·数据库·sql·oracle·性能优化·编辑器
南 阳12 天前
Python从入门到精通day37
数据库·python·oracle
轩情吖12 天前
MySQL库的操作
android·数据库·mysql·oracle·字符集·数据库操作·编码集
脱发的老袁12 天前
【数据库】Oracle手动清理归档日志
数据库·oracle
jnrjian12 天前
Oracle 共享池 库缓存下的 Library Cache Lock
数据库·缓存·oracle
新缸中之脑13 天前
在Reddit上探索未满足的需求
数据库·oracle
light blue bird13 天前
产线多并发客户端指令操作场景组件
jvm·oracle·.net·winform
坐吃山猪13 天前
Neo4j04_数据库事务
数据库·oracle·neo4j