ORACLE 10G以上 在同一数据库中复制用户下的所有表

1、用户USER01,对 DIRECTORY有读写权限,数据库与操作系统分别设置与创建好对应的路径及目录
2、授权,例如临时授予DBA权限,用完再收回
3、导出USER01例子:
expdp USER01/USER01  DIRECTORY=DUMP_TEST DUMPFILE=USER01.dmp SCHEMAS=USER01
注:如果是用sys用户导出的用户数据,包括用户创建、授权部分,用自身用户导出则不含这些内容

可以查询用户使用的默认表空间
select username,default_tablespace from dba_users where username='USER01';
查到USER01使用的默认表空间是DATA01

4、创建用户USER02,授权
create user USER02 identified by USER02;
grant connect,resource to USER02;
grant dba to USER02; 
grant read,write on directory DUMP_TEST to USER02;

5、创建USER02默认表空间
create tablespace DATA02 add datafile '/oradata/USER02.dbf' size 5M autoextend on next 5M maxsize 50M; 
alter user USER02 default tablespace DATA02;

6、将USER01用户下的数据全部导入到表空间DATA02(原来为DATA01表空间下)下
impdp USER02/USER02 DIRECTORY=DUMP_TEST DUMPFILE=USER01.dmp  remap_schema=USER01:USER02



如果是在WINDOWS环境下,需要注意环境变量,或者直接在bin目录下执行命令。
而如果要在CMD上使用SYSDBA用户来执行命令,需以以下格式执行:
expdp \"/ as sysdba\"  DIRECTORY=DUMP_TEST DUMPFILE=USER01.dmp SCHEMAS=user01
impdp \"/ as sysdba\"  DIRECTORY=DUMP_TEST DUMPFILE=USER01.dmp remap_tablespace=user01:user02




来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28371090/viewspace-1815566/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28371090/viewspace-1815566/

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值