exp user_name/pass@db_conn
通过db_conn指定数据库,db_conn为数据库的网络连接字符串

解决方案 »

  1.   


    C:\Documents and Settings\Administrator>EXP system/dgzhw@mydbExport: Release 9.2.0.1.0 - Production on 星期五 8月 27 21:42:32 2004Copyright (c) 1982, 2002, Oracle Corporation.  All rights reserved.
    EXP-00056: 遇到 ORACLE 错误 12545
    ORA-12545: 因目标主机或对象不存在,连接失败
    EXP-00000: 导出终止失败不知道是何原因?
      

  2.   

    用:
    tnsping mydb如果不同就是tns没有配置对
      

  3.   

    问题是这样的。
    首先我的OS是XP的。
    我是在VB中使用CreateProcess来运行EXP的。
    1 这样如果运行EXP system/dgzhw@mydb就会出现上面的问题。为什么会这样呢?后来我用SET一查原来在CMD下的很多SET都没有了。
    2 如果使用EXP system/dgzhw就没有问题,但是数据库又不能选择。
    3 如果使用SHELL的话上面的两个问题都不存在但是EXP的执行结果VB中又得不到。
    确实很麻烦现在有3种解决办法
    1 使用SHELL这样在VB中就不能看到EXP的执行结果,最差的结果
    2 在执行EXP之前使用SET命令设置一下SET的参数,可是在VB中同样会看到设置的过程。如果要过滤掉比较麻烦。且每次要设置要把这些命令写到一个批处理中去执行很不爽。
    3 使用一个命令选择好库后不要每次EXP时都选择就没问题了
    4 删掉其他的库,其实我们的系统中也只用到一个库,只是在调试的时候很不爽。
     
      

  4.   

    你可以在dos下输入 set oracle_sid=你要exp的数据库sid
    然后执行exp或者修改注册表中HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\HOME0下的ORACLE_SID值为"你要exp的数据库sid",如果没有,建立就可以了
      

  5.   

    exp user_name/pass@db_conn
    通过db_conn指定数据库,db_conn为数据库的网络连接字符串,实际就是net config(或者net easy config)里面配置的服务名,你在那里设置两个服务分别指向两个数据库就可以了。然后用exp user_name/pass@服务名即可
      

  6.   

    @my_db  是连接串,不是数据库的sid,my_db是你在sql net easy config 里建立的数据库连接串