从零开始进行不同表空间数据的备份操作:
1.创建表空间ts1
create tablespace ts1 datafile 'D:/oracle/product/10.2.0/oradata/mydb/ts1_1.dbf' size 10M;
alter tablespace ts1 add datafile 'D:/oracle/product/10.2.0/oradata/mydb/ts1_2.dbf' size 10M;
2.创建表空间ts2
create tablespace ts2 datafile 'D:/oracle/product/10.2.0/oradata/mydb/ts2_1.dbf' size 10M;
alter tablespace ts2 add datafile 'D:/oracle/product/10.2.0/oradata/mydb/ts2_2.dbf' size 10M;
3.创建用户ts1,ts2
create user ts1 default tablespace ts1 identified by ts1;
create user ts2 default tablespace ts2 identified by ts2;
4.grant相关权限
grant resource, connect to ts1, ts2;
grant create table to ts1, ts2;
grant select any table to ts1, ts2;
5.在ts1中创建表ts1_a,并插入数据
create table ts1_a as select * from test.a where 1=0;
insert into ts1.ts1_a select * from test.a where rownum<=100;
6.继续授权对datapump目录的读写权限以及创建数据库链接
grant read , write on directory DPDIR to ts2;
grant create database link to ts2;
create database link ts1 connect to ts identified by ts1 using 'mydb';
7.授权imp和exp
grant IMP_FULL_DATABASE,exp_full_database to ts2;
8.执行impdp操作,通过dblink完成ts1中数据表导入到ts2数据表中
impdp ts2/ts2 logfile=dpdir:ts2dp.log remap_schema=ts1:ts2 network_link=mydb directory=dpdir tables=ts1.ts1_a
9.执行expdp操作,直接将ts1的数据导出到dmp文件中
expdp ts2/ts2 dumpfile=dpdir:ts1dp.dmp schemas=ts1 nologfile=y