首页 > 代码库 > Oracle导dmp出现文件ORA-12154: TNS: 无法解析指定的连接标识符解决方案

Oracle导dmp出现文件ORA-12154: TNS: 无法解析指定的连接标识符解决方案

其实TNS无法解析是Oracle操作里经常遇到的问题,原因有二:
(1)Oracle服务器没有装好(一般不建议重装,因为Oracle卸载不完全是没法重装的)
(2)TNS没有配置

现在本博客给出解决方案:

现在先测试一下tns是否可以ping,成功的界面大致如下
技术分享

(1)在oracle安装路径的tns配置文件里添加如下代码

# tnsnames.ora Network Configuration File: d:\Oracle\product\10.2.0\client_1\NETWORK\ADMIN\tnsnames.ora
# Generated by Oracle configuration tools.

ORCL =
  (DESCRIPTION =
    (ADDRESS_LIST =
      (ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521))
    )
    (CONNECT_DATA =
      http://www.mamicode.com/(SERVICE_NAME = ORCL)>

其中orcl是我的数据库名称,这个需要根据需要配置

(2)配置TNS环境变量
环境变量类似于:

D:\oracle\product\11.2.0\dbhome_1\NETWORK\ADMIN

补充:下面给出Oracle数据库还原的步骤示例
1、将TESTDB.bmp放置在dpdump目录,如下路径:
E:\app\Administrator\admin\orcl\dpdump

2、创建用户
create user testdb65 identified by “testdb65” default tablespace users temporary
tablespace temp;
用户授权
grant connect,dba to testdb65;

3、创建表空间
CREATE TABLESPACE NNC_DATA01 DATAFILE ‘D:\tablespace\nnc_data01.dbf’ SIZE 500M
AUTOEXTEND ON NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;
CREATE TABLESPACE NNC_INDEX01 DATAFILE ‘D:\tablespace\nnc_index01.dbf’ SIZE 100M
AUTOEXTEND ON
NEXT 50M EXTENT MANAGEMENT LOCAL UNIFORM SIZE 256K ;

4、导入 bgyhr2是来源库
impdp testdb65/testdb65@orcl schemas=testdb65 dumpfile=TESTDB65.dmp
impdp ncjob65/ncjob65@orcl schemas=testdb65 dumpfile=TESTDB65.dmp

导出 scott 是要导出的库
expdp lfwtrain/a@orcl schemas=当前用户 dumpfile=expdptest.dmp

补充:下面给出Plsql Developer客户端连接远程Oracle出现TNS无法解析的解决方案

详情见我的博客:http://blog.csdn.net/u014427391/article/details/56479085

<script type="text/javascript"> $(function () { $(‘pre.prettyprint code‘).each(function () { var lines = $(this).text().split(‘\n‘).length; var $numbering = $(‘
    ‘).addClass(‘pre-numbering‘).hide(); $(this).addClass(‘has-numbering‘).parent().append($numbering); for (i = 1; i <= lines; i++) { $numbering.append($(‘
  • ‘).text(i)); }; $numbering.fadeIn(1700); }); }); </script>

    Oracle导dmp出现文件ORA-12154: TNS: 无法解析指定的连接标识符解决方案