oracle11g 可传输表空间

Transportable Tablespaces

 

可以使用TTS 特性将表空间从一个数据库copy 到另一个数据库。

使用TTS 移动数据要比export/import 或unload/load 快很多,因为TTS数据的移动仅仅是datafile的一个copy 过程,TTS的Data Pump仅移动表空间对象的metadata.

一个transportabletablespace set 包含表空间的datafiles 和 表空间的metadata。

操作步骤如下:

1. 确认传输表空间的平台是否兼容

在源数据库端

select tp.* from v$transportable_platform tp,v$database d where tp.PLATFORM_NAME = d.PLATFORM_NAME;

在目标数据库端

oracle11g 可传输表空间_第1张图片

二者的eddian_format 格式一致不需要转换

 

2.表空间自包含(独立性)检查

execute dbms_tts.transport_set_check('index_assess',true);

3.在源数据库将表空间设为只读状态
alter tablespace index_assess read only;

4.使用expdp工具生成表空间(集)用其他用户导出
expdp ghsj_jcsj/ghsj2011 directory=DMP_DIRECTORY dumpfile=index_assessmeta.dmp logfile=index_assessmeta.log transport_tablespaces=index_assess transport_full_check=y

5.使用ftp工具分别拷贝表空间(集)和与表空间对应数据文件到相应的目录。

6.将源数据库表空间设为read-write状态。

alter tablespace index_assess read write;

7.在目标数据库创建用户

create user INDEX_ASSESS identified by ghsj2011

8.赋予权限
 grant connect,resource to index_assess;


9.在目标数据库使用impdp工具将表空间(集)导入目标数据库,根据需要决定是否需要创建与源数据库

相同的用户,或者在使用impdp是可以使用remap_schema参数。用其他用户导入

impdp ghsj_jcsj/ghsj2011 dumpfile=index_assessmeta.dmp  directory=dump_dir transport_datafiles=D:\app\oracle\oradata\ghsjdb\index_assess.dbf  logfile=index_assessmeta.log

10.将目标数据库用户的默认表空间修改
alter user index_assess default tablespace index_assess--将默认表空间修改为index_assess

11.将目标数据库的表空间改为读写
alter tablespace index_assess read write;

 

验证是否成功!

 

 

 

你可能感兴趣的:(Oracle11g)