暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 表空间异构传输

kk的DBA随笔 2024-11-14
143

已经有了表空间的数据文件,和元数据 dump 文件,如何把这个表空间传输到异构表空间中?

查询异构传输平台信息:

  1. COLUMN PLATFORM_NAME FORMAT A40

  1. SELECT PLATFORM_ID, PLATFORM_NAME, ENDIAN_FORMAT

  2. FROM V$TRANSPORTABLE_PLATFORM

  3. ORDER BY PLATFORM_ID;

在 RMAN 中执行转换:

  1. CONVERT DATAFILE '/home/oracle/scripts/trpdata_6.dbf' --数据文件位置

  2. TO PLATFORM="Linux x86 64-bit" --到哪个平台

  3. FROM PLATFORM="Solaris[tm] OE (32-bit)" --从哪个平台过来的

  4. DB_FILE_NAME_CONVERT='/home/oracle/scripts/ trpdata_6.dbf','/u01/app/oracle/oradata/PRODCDB/PDBPROD1/trpdata_6.dbf'; --产生的数据文件路径

此时查询表空间,发现没有迁移过来的表空间。

这是因为刚刚只是产生了数据文件,还没有用表空间的元数据文件。

创建目录

  1. create directory dir1 as '/home/oracle/scripts';

创建用户并给权限

  1. create user trans_user identified by oracle;

  1. grant connect,resource,unlimited tablespace to trans_user;

impdp 导入

  1. impdp system/oracle@pdbprod1 directory=dir1 dumpfile=trans3_2.dmp TRANSPORT_DATAFILES=/u01/app/oracle/oradata/PRODCDB/PDBPROD1/trpdata_6.dbf

再次查看表空间,发现表空间已经传入数据库

表空间恢复读写模式

  1. alter tablespace TRANS_TBS read write;


文章转载自kk的DBA随笔,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论