确认环境:源库:系统:RedHat企业版5.4 数据库版本:Oracle 10.2.0.1.0IP:10.37.100.100目标库:系统:RedHat企业版5.4 数据库版本:ORACLE 10.2.0.3.0IP:10.37.100.101需要传输的表空间:TTS_TEST 检查一下环境:源库上查看版本支持情况:SQL> select db.name,db.platform_name,tp.endian_format 2 from v$transportable_platform tp,v$database db 3 where tp.platform_name=db.platform_name 4 / NAME PLATFORM_NAME ENDIAN_FORMAT--------- -------------------- --------------ORCL Linux IA (32-bit) Little查看数据库版本:SQL> select version from v$instance;VERSION-----------------10.2.0.1.0 备库上查看版本情况:SQL> select db.name,db.platform_name,tp.endian_format 2 from v$transportable_platform tp,v$database db 3 where tp.platform_name=db.platform_name 4 / NAME PLATFORM_NAME ENDIAN_FORMAT--------- -------------------- --------------ORCL Linux IA (32-bit) Little 源库上需要有整库和所有归档日志的备份 RMAN> backup database plus archivelog format "/u01/rman_backup/all_database_bak_%T_%t.bak";
RMAN> transport tablespace tts_test2> tablespace destination "/u01/tts_dir/td"3> auxiliary destination "/u01/tts_dir/ad"; 此时传输表空间所需的数据文件,日志文件,传输集及导入脚本均已生成在tablepsace desnation目录下,而auxilibary desnation路径下的临时文件已经被删除
[oracle@localhost td]$ cd /u01/tts_dir/td/[oracle@localhost td]$ lsdmpfile.dmp explog.log impscrpt.sql tts01.dbf tts02.dbf [oracle@localhost td]$ cd /u01/tts_dir/ad/[oracle@localhost ad]$ lsTSPITR_ORCL_MWWE[oracle@localhost ad]$ cd TSPITR_ORCL_MWWE/[oracle@localhost TSPITR_ORCL_MWWE]$ lsdatafile onlinelog[oracle@localhost TSPITR_ORCL_MWWE]$ cd datafile/[oracle@localhost datafile]$ ls[oracle@localhost datafile]$ cd ../onlinelog/[oracle@localhost onlinelog]$ ls 将tablepsace desnation路径下生成的所有文件copy到目标库: [oracle@localhost ~]$ scp 10.37.100.100:/u01/tts_dir/td/* /u01/tts_dir/oracle@10.37.100.100"s password: dmpfile.dmp 100% 76KB 76.0KB/s 00:00 explog.log 100% 1226 1.2KB/s 00:00 impscrpt.sql 100% 2175 2.1KB/s 00:00 tts01.dbf 100% 20MB 20.0MB/s 00:01 tts02.dbf 100% 20MB 20.0MB/s 00:01 SQL> @/u01/tts_dir/impscrpt.sql Directory created.Directory created.DECLARE*ERROR at line 1:ORA-39002: invalid operationORA-06512: at "SYS.DBMS_STREAMS_TABLESPACE_ADM", line 2006ORA-06512: at line 20Directory dropped.Directory dropped.报错的原因是目标库的传输集路径跟源库的不一样,可以将传输集复制到相同的路径下,或者去修改一下impscrpt.sql中的路径:[oracle@localhost tts_dir]$ vi impscrpt.sql 将一下两个路径修改成目标库下的传输集路径即可:CREATE DIRECTORY STREAMS$DIROBJ$1 AS "/u01/tts_dir/";CREATE DIRECTORY STREAMS$DIROBJ$DPDIR AS "/u01/tts_dir/"; 再次执行脚本导入: SQL> @/u01/tts_dir/impscrpt.sql Directory created.Directory created.PL/SQL procedure successfully completed.Directory dropped.Directory dropped. 也可以直接使用inpdp命令导入(这种导入可以使用remap_schma参数来修改表空间的所属主) [oracle@localhost tts_dir]$ impdp system/oracle dumpfile=dmpfile.dmp directory=tts_dir nologf
ile=y transport_datafiles=/u01/tts_dir/tts01.dbf,/u01/tts_dir/tts02.dbf remap_schema=tts:xtt;
Connected to: Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - Production
With the Partitioning, OLAP and Data Mining optionsMaster table "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully loaded/unloaded
Starting "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01": system/******** dumpfile=dmpfile.dmp directory=tts_dir nologfile=y transport_datafiles=/u01/tts_dir/tts01.dbf,/u01/tts_dir/tts02.dbf remap_schema=tts:xtt
Processing object type TRANSPORTABLE_EXPORT/PLUGTS_BLKProcessing object type TRANSPORTABLE_EXPORT/TABLEProcessing object type TRANSPORTABLE_EXPORT/TABLE_STATISTICSProcessing object type TRANSPORTABLE_EXPORT/POST_INSTANCE/PLUGTS_BLKJob "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" successfully completed at 10:24:37 查看一下结果:SQL> conn xtt/oracleConnected. SQL> select * from tab;TNAME TABTYPE CLUSTERID------------------------------ ------- ----------TEST TABLEDG_TEST TABLESTD_TABLE_1 TABLESTD_TABLE TABLE更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle 11g使用DBCA以非交互(静默)方式创建数据库Oracle 10g expdp导出报错ORA-4031的解决方法相关资讯 RMAN RMAN迁移表空间
- RMAN故障一例(归档的备份,从不 (今 20:42)
- RMAN的FORMATA格式说明 (03月10日)
- Oracle 11g RMAN复制数据库的测试 (01月19日)
| - RMAN数据库迁移 (05月22日)
- 使用RMAN复制恢复开发库环境 (02月17日)
- Oracle 11g RMAN跨平台传输表空间 (01月19日)
|
本文评论 查看全部评论 (0)