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

相关推荐
百***170719 分钟前
Oracle分页sql
数据库·sql·oracle
cqsztech5 小时前
ORACLE数据库中如何找到过去某个时间某个表被谁修改了
数据库·oracle
whb2341741248 小时前
测试linux删除Oracle文件,使用文件句柄恢复
linux·运维·oracle
HitpointNetSuite9 小时前
连锁餐饮行业ERP系统如何选择?
大数据·数据库·oracle·netsuite·erp
凯子坚持 c10 小时前
从 API 到应用:用 Rust 和 SQLx 为 Axum 服务添加持久化数据库
数据库·oracle·rust
百***680413 小时前
MySQL四种备份表的方式
mysql·adb·oracle
百***628513 小时前
oracle 12c查看执行过的sql及当前正在执行的sql
java·sql·oracle
百***874413 小时前
MySQL 查看有哪些表
数据库·mysql·oracle
曹牧13 小时前
Oracle:查询当前正在等待执行的SQL语句
linux·数据库·oracle
_Kafka_13 小时前
在 Oracle Data Guard 环境中,手工将备库(Standby)切换为主库(Primary)
数据库·oracle