oracle导入dmp表空间问题

折腾了一下午..........(原谅我这个oracle菜鸟).......

首先说一下oracle导入

导入前需先创建用户,表空间,并赋予权限

创建用户:create user rc2 identified by 123;

赋予权限:

GRANT RESOURCE,CONNECT,DBA to rc2;
GRANT CREATE TABLESPACE TO rc2 WITH ADMIN OPTION;
GRANT CREATE TRIGGER TO rc2 WITH ADMIN OPTION;
GRANT DEBUG CONNECT SESSION TO rc2 WITH ADMIN OPTION;
GRANT EXECUTE ANY TYPE TO rc2 WITH ADMIN OPTION;
GRANT UNLIMITED TABLESPACE TO rc2 ;

创建表空间

create tablespace rc2
datafile '+DATA/sirac_new/datafile/zhrc.dbf'
size 1500M
autoextend on next 5M maxsize 3000M;

修改默认表空间

alter user rc2  default tablespace  rc2;

 

完成后,进行dmp导入

运行cmd进入dos窗口后,输入命令:

imp 用户名/密码@服务名  file=d:/test.dmp log=d:/test123.log  fromuser=rc1  touser=rc2

导入成功后发现表空间使用的还是导出的dmp所在的表空间

(原因为数据库存在dmp文件的表空间,在导入的时候应该制定表空间的,当时菜鸟不知道啊!!!

指定表空间:

imp 用户名/密码@服务名  file=d:/test.dmp log=d:/test123.log    tablespaces =表空间名  fromuser=rc1  touser=rc2

那怎么办?将错就错,看有没有不就措施(百度中google一下.....

参考一下链接:

http://www.cnblogs.com/gw811/p/4120109.html

http://www.360doc.cn/article/4571_25193919.html

在当前新建用户下修改表所在表空间

alter table db01 move tablespace rc2;

或进行批量修改:select 'alter table  '|| table_name ||'  move tablespace rc2 ;'  from user_tables;

修改索引所在表空间

alter index PK_ZP10 rebuild tablespace rc2;

或进行批量修改:select 'alter index '|| index_name ||' rebuild tablespace rc2 ;' from user_indexes;

涉及到blob的表时,特殊处理一下:

ALTER TABLE 表名 MOVE    LOB(涉及blob字段名)          STORE AS log_segment( ---log_segment  对应dba_lobs表中segment_name字段
TABLESPACE rc2 --新建的表空间
ENABLE STORAGE IN ROW  --如果DISABLE这个属性,那么lob数据会在行外存储,行内只存储该lob值得指针,而且这个属性在表
                        --创建后只能在MOVE表时才可以被改变
CHUNK 8192             --是一个很特别的属性,对一次LOB数据的操作(插入或更新),因该分配多少存储空间,
                       --指定的值最好是数据库块的倍数,而且指定的值不能大于表空间区间中NEXT的值,
                       --要不然ORACLE会return一个错误,如果以前已经设置这个值了,那么在后期指定的值是不能被改变的。
RETENTION              --应用了automatic undo mode中的undo_retention通过时间来管理lob镜像空间.
--FREEPOOLS             --给LOG segment指定free list.RAC环境下integer为实例的个数.单实例环境下为1.
                       --在automatic undo mode下oracle默认采用
NOCACHE);

 

 

 

到此!问题解决!

oracle菜鸟还有很多知识要学啊.......

 

 

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值