刚开始用oracle 不清楚如何备份,恢复我机子上装有oracle客户端,连接了服务器一实例名为:"A8"的数据库,我使用的是系统分配给我的用户名(zrc)和密码(123456)登录,现在我想在自己机子上,备份ZRC用户名下的数据,到另外一台机子上还原它,我该如果操作(备份和还原),越详细越好,小弟在线等,谢谢!

解决方案 »

  1.   

    试试如下:
    dos下执行:
    备份:
    exp zrc/123456@a8 file=xx.dmp owner=zrc恢复:
    imp user/pw file=xx.dmp fromuser=zrc touser=userxx
      

  2.   

    刚才试了一下,备份的数据放在哪个位置..可以说明下吗,没用过oracle
      

  3.   

    可以指定啊:
    比如d:\下的话就是:exp zrc/123456@a8 file=d:\xx.dmp owner=zrc 
      

  4.   

    unix下的话,直接写文件名 默认就是你工作目录,用pwd命令可以查看。
      

  5.   

    楼上正解,window环境 就写绝对路径就可以了。eg: file=d:\dmpfile\expdmp2008.dmp log=d:\dmpfile\explog.log
      

  6.   

    下面介绍的是导入导出的实例。
    数据导出:
     1 将数据库TEST完全导出,用户名system 密码manager 导出到D:\daochu.dmp中
       exp system/manager@TEST file=d:\daochu.dmp full=y
     2 将数据库中system用户与sys用户的表导出
       exp system/manager@TEST file=d:\daochu.dmp owner=(system,sys)
     3 将数据库中的表inner_notify、notify_staff_relat导出
        exp aichannel/aichannel@TESTDB2 file= d:\data\newsmgnt.dmp tables=(inner_notify,notify_staff_relat)  4 将数据库中的表table1中的字段filed1以"00"打头的数据导出
       exp system/manager@TEST file=d:\daochu.dmp tables=(table1) query=\" where filed1 like '00%'\"
      
      上面是常用的导出,对于压缩,既用winzip把dmp文件可以很好的压缩。
      也可以在上面命令后面 加上 compress=y 来实现。 数据的导入
     1 将D:\daochu.dmp 中的数据导入 TEST数据库中。
       imp system/manager@TEST  file=d:\daochu.dmp
       imp aichannel/aichannel@HUST full=y  file=file= d:\data\newsmgnt.dmp ignore=y 
       上面可能有点问题,因为有的表已经存在,然后它就报错,对该表就不进行导入。
       在后面加上 ignore=y 就可以了。
     2 将d:\daochu.dmp中的表table1 导入
     imp system/manager@TEST  file=d:\daochu.dmp  tables=(table1)