expdp/impdp使用TTS

1.查看源/目标OS是否endianness相同
col platform_name for a40
SELECT * FROM V$TRANSPORTABLE_PLATFORM ORDER BY PLATFORM_NAME;
也可以使用下面查询分别在原目标库执行
SELECT d.PLATFORM_NAME,ENDIAN_FORMAT 
FROM V$TRANSPORTABLE_PLATFORM tp, V$DATABASE d 
WHERE tp.PLATFORM_NAME =d.PLATFORM_NAME;

2.Source上创建测试表空间
select tablespace_name,status from dba_tablespaces;
select file_name from dba_data_files;
create tablespace anqing datafile '/u01/app/oracle/oradata/anqing/anqing01.dbf'size 50M;
create user anqing identified byanqing default tablespace anqing temporary tablespace temp;
grant connect,resource to anqing;
conn anqing/anqing;
create table anqing as select * fromall_objects;

3.创建数据泵使用的目录
create directory backup as'/u01/backup';
col owner format a5
col directory_name format a25
select * from dba_directories where directory_name='BACKUP';

4.检查表空间自包含
execute dbms_tts.transport_set_check(ts_list=>'anqing', incl_constraints=>TRUE,full_check=>FALSE);   ---单向检查
--execute dbms_tts.transport_set_check(ts_list=>'anqing', incl_constraints=>TRUE,full_check=>TRUE);  ---双向检查
select * fromtransport_set_violations;

5.将表空间设置成read-only
alter tablespace anqing read only;
select tablespace_name,status from dba_tablespaces;

6. 导出
$ expdp system/oracle dumpfile=anqing.dmp directory=backup transport_tablespaces=anqing transport_full_check=NO logfile=anqing.log
--transport_full_check=yes 对应第4步的full_check=yes
--transport_full_check=no 对应第4步的full_check=no

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
如果不同endianness需要转化
1)在源端转化方法:
rman target /
convert tablespace anqing to platform="Linux IA (32-bit)"  db_file_name_convert='/u01/app/oracle/oradata/anqing/anqing01.dbf','/tmp/anqing01.dbf';
2)在目的端转化方法:
rman target /
convert datafile '/tmp/anqing01.dbf' db_file_name_convert="/tmp/","/u02/app/oracle/oradata/anqing/";
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
 
7.将Transportable Tablespace set传送到Target端
$ scp anqing.dmp 192.168.3.201:/u01/backup
$ scp anqing01.dbf 192.168.3.201:/u02/app/oracle/oradata/anqing

8.在Target 系统上Import 表空间的metadata
create user dave identified bydave;
grant connect,resource to dave;
$ impdp system/oracle directory=backup dumpfile=anqing.dmp transport_datafiles=/u02/app/oracle/oradata/anqing/anqing01.dbf remap_schema=anqing:dave logfile=anqing.log

9.查看并修改表空间状态
select tablespace_name,status from dba_tablespaces;
此时Source 和 Target 端都是read only 状态,修改2个表空间的状态:
alter tablespace anqing read write;
select tablespace_name,status from dba_tablespaces;
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值