如题,只备份选定的表,其他表不备份,越详细越好

解决方案 »

  1.   

    如:
    IMP SCOTT/TIGER IGNORE=Y TABLES=(EMP,DEPT) FULL=N
      

  2.   

      exp关键字的一些说明:  USERID 用户名/口令
      FULL 导出整个文件 (N)
      BUFFER 数据缓冲区的大小
      OWNER 所有者用户名列表
      FILE 输出文件 (EXPDAT.DMP)
      TABLES 表名列表
      COMPRESS 导入一个范围 (Y)
      RECORDLENGTH IO 记录的长度
      GRANTS 导出权限 (Y)
      INCTYPE 增量导出类型
      INDEXES 导出索引 (Y)
      RECORD 跟踪增量导出 (Y)
      ROWS 导出数据行 (Y)
      PARFILE 参数文件名
      CONSTRAINTS 导出限制 (Y)
      CONSISTENT 交叉表一致性
      LOG 屏幕输出的日志文件
      STATISTICS 分析对象 (ESTIMATE)
      DIRECT 直接路径 (N)
      TRIGGERS 导出触发器 (Y)
      FEEDBACK 显示每 x 行 (0) 的进度
      FILESIZE 各转储文件的最大尺寸
      QUERY 选定导出表子集的子句
      

  3.   

    数据导出:
     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) 
     
     基本上上面的导入导出够用了。不少情况要先是将表彻底删除,然后导入。
     
    注意:
     操作者要有足够的权限,权限不够它会提示。
     数据库时可以连上的。可以用tnsping TEST 来获得数据库TEST能否连上。
      

  4.   

    cmd命令执行下列语句:
    exp user/passwd@sid tables=(table1,table2,table3....) file=d:\daochu.dmp;
    初学者这样就可以了。其他参数可以不考虑
    user用户名
    passwd密码
    sid实例名,如果是本机可以不用写。
    file=后面路径跟文件名随意写
      

  5.   

    还可以在plsqldev.exe中直接操作,选择“tool->export tables->再选择你要备份的表->执行oracle export”就可以。
    或者用5楼的方法
      

  6.   

    exp user/passwd@sid tables=(table1,table2,table3) file=d:\bf.dmp ignore=y; 
    -- table1,table2...是你指定要备份的表
      

  7.   

    单纯的表级备份,似乎只能使用exp或者expdp:
    exp user/userpw@oracle_sid tables=(EMP,DEPT,MGR) file=d:\xx.dmp log=d:\expxx.log
    expdp方法如下:
    SQL> CREATE DIRECTORY exp_dir AS 'D:\oracle\datapump\scott';
    SQL> GRANT READ,WRITE ON DIRECTORY exp_dir to SCOTT;expdp SCOTT/tiger@oracle_sid tables=CASES directory=exp_dir dumpfile=expCASES_%U.dmp 
      

  8.   

    可以用PLSQL 工具呀,挺好用的,那个上面可以选择!
      

  9.   

    exp username/password@网络服务名 file=d:\tabbak.dmp log=d:\tabbak.log tables=(tablename1,tablename2,...) 
      

  10.   

    在 cmd 窗口中输入imp 用户名/密码@连接串,点回车
    然后在提示中输入用户名表名等信息即可
      

  11.   

    exp 用户名/密码 file=F:\backup\... tables=scott.emp 这是在服务器
    exp 用户名/密码@数据库网络服务名 file=F:\backup\... tables=scott.emp 
    注意权限
      

  12.   

    楼上的方法都可以用有没有用sql语句实现的方式啊现在做的项目是Web项目,客户希望在网页上点一下,数据库就能按定义好的方式备份