ORA-12154: TNS: 无法处理服务名

参照:

oralce的备份方式有很多种!但在做web开发时常用的就是导入和导出。假如有后台数据库开发的东西,那么就是完全导入和导出,

 exp和imp是oracle提供的导出和导入工具。主要是在DOC窗口的命令下使用的。

首先是导出,(完全导出,包括表格和其他资源)

     开始--运行--CMD---打开DOC窗口,首先测试监听是否开启,tnsping 服务名:例如:tnsping capaa;

     然后执行命令:exp admin/password@capaa file=d:xxx.dmp full=y;

     注意,这里要用exp,而不是export , 不然会包错。不能导出。

 然后是导入:

     开始--运行--CMD---打开DOC窗口,首先测试监听是否开启,tnsping 服务名:例如:tnsping capaa;

     然后执行命令:imp  admin/password@capaa file=d:xxx.dmp full=y;

 

在oracle里,一个实例可以有多个应用的,每个应用一个表空间

 建立一个表空间

  create tablespace capaa datafile 'admin.dbf' size 10m autoextend on;

 建一个用户

  create user admin identified by admin default tablespace capaa;

授超级用户权限,为了开发方便

  grant dba to admin

 

 总结:这两个命令很简单,但如果不常用,还是会忘记的,所以记录下来!

 

执行以下代码:

 

exp system/manager@dms file=d:/dms2010.dmp full=y

 

 

报错信息:

 

EXP-00056: 遇到 ORACLE 错误 12154
ORA-12154: TNS: 无法处理服务名
EXP-00000: 导出终止失败

 

 

 

网上搜到下面的一篇文章:

在确认用户密码正确的情况下,假设命令:

 

exp system/manager@dbname file=d:/exp.dmp full=y

 

这里错误原因一般由@后接的dbname 错误导致,这里换成 tnsnames.ora 中配置的名称即可,它可能是一串IP或者一串有意义的字符。
原来dbname 并不是指dms数据库名,而是本地客户端连接远程oracle数据库的配置名称,最后修改为

exp system/[email protected] file=d:/dms2010.dmp full=y

 

 

 

你可能感兴趣的:(ORACLE)