1、使用EXPDP/IMPDP,可以使用下面两个选项可以实现不同用户,不同表空间导入
(1、REMAP_SCHEMA ----不同用户
该选项用于将源方案的所有对象装载到目标方案中.
REMAP_SCHEMA=source_schema:target_schema
(2、REMAP_TABLESPACE
将源表空间的所有对象导入到目标表空间中
REMAP_TABLESPACE=source_tablespace:target_tablespace
2、使用EXP/IMP
(1、使用不同用户
FROMUSER=user01
TOUSER=user02
(2、使用不同表空间
10G一下需要按下面操作
限制默认表空间的空间使用,USER为默认表空间,data01为目标表空间。
grant connect,resource to test;
grant dba to test;
revoke unlimited tablespace from test;
alter user test default tablespace data01;
alter user test quota 0 on users;
alter user test quota unlimited on data01;
11G需要修改一个参数DEFERRED_SEGMENT_CREATION=false
11G 实验过程:
源端HR的数据在EXAMPLE表空间,目标数据库在TEST表空间
1、源段导出数据:
exp tony/tony OWNER=hr DIRECT=Y RECORDLENGTH=65535 BUFFER=104857600 FILE=/tmp/hr.dmp LOG=/ggdb_rman/log/COMM.log
2、目标段导入数据:
1)、创建用户
create user hr identified by hr default tablespace test;
grant connect,resource to hr;
grant dba to hr;
revoke unlimited tablespace from hr;
alter user hr quota 0 on EXAMPLE;
alter user hr quota unlimited on test;
2)导入数据
imp tony01/tony01 FILE=c:\hr.dmp BUFFER=104857600 FROMUSER=hr TOUSER=hr LOG=c:/imp.hr.log
导入分两种情况:
· DEFERRED_SEGMENT_CREATION=true 默认情况下。
SQL> SELECT TABLESPACE_NAME,OWNER,TABLE_NAME FROM DBA_TABLES WHERE OWNER='HR';
TABLESPACE_NAME OWNER TABLE_NAME
------------------------------ ------------------------------ ------------------------------
HR COUNTRIES
EXAMPLE HR DEPARTMENTS
EXAMPLE HR EMPLOYEES
EXAMPLE HR JOBS
EXAMPLE HR JOB_HISTORY
EXAMPLE HR LOCATIONS
EXAMPLE HR REGIONS
· DEFERRED_SEGMENT_CREATION=false的情况下
SQL> SELECT TABLESPACE_NAME,OWNER,TABLE_NAME FROM DBA_TABLES WHERE OWNER='HR';
TABLESPACE_NAME OWNER TABLE_NAME
------------------------------ ------------------------------ ------------------------------
HR COUNTRIES
TEST HR REGIONS
TEST HR LOCATIONS
TEST HR JOB_HISTORY
TEST HR JOBS
TEST HR EMPLOYEES
TEST HR DEPARTMENTS
在这里需要注意,如果目标段没有EXAMPLE表空间,那么也会存储在TEST表空间