mysql导入10g数据库_oracel 10g数据库部分表的导入导出

问题起因:在一次导回数据库的时候发现数据库过大,导回比较困难,通过数据库相关查询发现了问题

select sum(bytes)/1024/1024/1024 from user_segments;    -- 大概20G数据

select segment_name,bytes/1024/1024 from user_segments order by bytes/1024/1024 desc  ;  -- 找到具体是哪些表占用大的空间,通过倒叙可以看到前几个占用空间较大的对象,将这些对象 通过下面的查询 找到对应的表

select * from user_objects where object_name='SYS_LOB0000055475C00005$$';

找到具体的两张表中有大字段,表是 'ERECEIVEFILE','ESENDFILE' 这两张表都存在大字段,大约占了16G的数据,不想将这两张表的数据导出

所以就有了这样的问题:

提出的问题:

oracle 10g 数据库导出数据时不导出某些表,导出其它所有表;导入时:不导入某些表,其它表全部导入

网上说 exp,imp  做不到

如果是10g或者以上版本的话 可以用expdp 这个可以 排除表

Expdp scott/tiger DIRECTORY=dump DUMPFILE=a.dup EXCLUDE=table:"in('tablename1'...)"

解决方法:

具体做法如下:

=================================================

sqlplus/nolog

conn carmot_hz_8/carmot@10.168.1.22:1521/IGRP;

CREATE OR REPLACE DIRECTORY dir_dump  AS 'D:/dbbak/bak';

GRANT READ, WriTE ON DIRECTORY dir_dump TO public;

--导回数据库

Expdp carmot_hz_8/carmot@10.168.1.22:1521/IGRP DIRECTORY=DIR_DUMP DUMPFILE=201207171030-carmot_hz_8.dp EXCLUDE=TABLE:\"IN('ERECEIVEFILE', 'ESENDFILE')\" logfile=carmot.log

================================================

sqlplus/nolog

conn carmot_hz_8/carmot@DEV_10.4.247.92;

CREATE OR REPLACE DIRECTORY dir_dump  AS 'D:/dbbak/bak';

GRANT READ, WriTE ON DIRECTORY dir_dump TO public;

--导入数据库

Impdp carmot_hz_8/carmot@DEV_10.4.247.92  DIRECTORY=DIR_DUMP DUMPFILE=201207171030-carmot_hz_8.dp EXCLUDE=TABLE:\"IN('ERECEIVEFILE', 'ESENDFILE')\" logfile=carmot.log

分享到:

18e900b8666ce6f233d25ec02f95ee59.png

72dd548719f0ace4d5f9bca64e1d7715.png

2012-07-17 13:41

浏览 1522

分类:数据库

评论

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值