现有一逻辑备份出的文件,XXX.dmp文件,不是用sys导出的,他包含几个用户,但是不知都有什么用户,现在想导入到一个新的数据库中,应该如何导入?导入命令怎么写啊?

解决方案 »

  1.   

    imp user/name file= show=y full=y log=d:\imp.log 用sys用户导入看看日志,然后再  
    一个一个 fromuser=  touser=去导入。
      

  2.   

    整个数据库导入罢。参考命令如下--导入整个数据库
    IMP USERID=system/manager FILE=C:\expdir\fulldb.dmp LOG=C:\expdir\import.log FULL=y IGNORE=y(忽略导入过程产生的错误)
      

  3.   


    IMP system/manager FILE=C:\expdir\fulldb.dmp LOG=C:\expdir\import.log FULL=y IGNORE=y
      

  4.   

    imp userid=sdsb/0420@orcl file=d:\sdsb_run2011-04-20.dmp full=y以上标红的地方,是需要根据你的实际情况改的:
    我给你一一解释:
    1、sdsb:你的目的数据库名,即,你要把备份文件导入到新建的sdsb数据库
    2、0420:密码,数据库登录密码
    3、orcl:你的服务器名称,如果不清楚自己的服务器名称,可以到自己系统下的:tnsnames.ora文件下查找,我给你看一下我的tnsnames.ora:
    sdsb=
      (DESCRIPTION =
        (ADDRESS = (PROTOCOL = TCP)(HOST = 192.168.1.181)(PORT = 1521))
        (CONNECT_DATA =
          (SERVER = DEDICATED)
          (SERVICE_NAME =orcl)
        )
      )
    4、d:\sdsb2011-04-20.dmp  你要导的备份文件的存放位置,我是放在D盘根目录下,文件名是:sdsb2011-04-20.dmp
    注意以上地方就行了,如果有什么问题,欢迎继续追问!
      

  5.   

    我的方法笨一点,直接打开DMP文件看文件头,文件头部的几兆空间会有表空间、用户、DBLINK等信息,基本上都是熟悉的SQL模式的,一看就知道。如果你的DMP很大,那么就用命令把DMP头部的内容保存到另外的一个文件里面,例如:
    windows命令行下,使用 type xxxx.dmp >>back.txt
    命令执行后马上按CTRL + C 终止执行,然后就会看到生成的back.txt文件,用文本工具打开一看就知道了。
      

  6.   

    我有一个XXX.dmp文件,也打开看了,里面连建表空间、建用户,给用户赋予表空间全都有了,这样的数据怎么导入啊????????????谢了!!!