Chinaunix首页 | 论坛 | 博客

  • 博客访问: 57148
  • 博文数量: 16
  • 博客积分: 1415
  • 博客等级: 上尉
  • 技术积分: 169
  • 用 户 组: 普通用户
  • 注册时间: 2010-08-16 09:39
文章分类

全部博文(16)

文章存档

2011年(1)

2010年(15)

我的朋友

分类: Oracle

2010-09-08 12:45:29

利用oracle10g_rman_convert_transportable tablespace迁移表空间
前言:
   利用rman cross-platform. transfortable databases and tablespaces 跨os平台迁移数据库或表空间
 
1、在源库创建要cross的表空间及对应的用户
 SQL> create tablespace crosstbs datafile 'D:\ORACLE\PRODUCT\10.1.0\DB_1\TRAIN\crosstbs.DBF' size 10m;  --建立表空间
 SQL> create user crosstbs identified by crosstbs default tablespace CROSSTBS; --建立用户
 SQL> grant  resource,connect to crosstbs;  --对用户进行授权
 
  SQL> conn crosstbs/crosstbs
  已连接。
  SQL> create table test(a int) ;   --建立表并插入记录
  
  表已创建。
  
  SQL> insert into test values(1);
  
  已创建 1 行。
  
  SQL> insert into test values(2);
  
  已创建 1 行。
  
  SQL> commit;
  
  提交完成。
    
  SQL> conn / as sysdba
  已连接。
  SQL> alter tablespace crosstbs read only;  --置只读
  
  SQL> create directory dumpdir as 'c:\temp' ;  --IMPDP、EXPDM 要用到
  
  目录已创建。
  
  SQL> grant read,write on directory dumpdir to crosstbs;  --目录授权
  
  授权成功。

2、在源库导出要cross os的表空间
 c:\temp>  expdp system/manager directory=dumpdir dumpfile=exp_crosstbs.dmp transport_tablespaces=crosstbs  
 
 Export: Release 10.1.0.2.0 - Production on 星期三, 08 9月, 2010 10:47
 
 Copyright (c) 2003, Oracle.  All rights reserved.
 
 连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
 With the Partitioning, OLAP and Data Mining options
 启动 "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01":  system/******** directory=dumpdir
 dumpfile=exp_crosstbs.dmp transport_tablespaces=crosstbs
 处理对象类型 TRANSPORTABLE_EXPORT/PLUGTS_BLK
 处理对象类型 TRANSPORTABLE_EXPORT/TABLE
 处理对象类型 TRANSPORTABLE_EXPORT/TTE_POSTINST/PLUGTS_BLK
 已成功加载/卸载了主表 "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01"
 ******************************************************************************
 SYSTEM.SYS_EXPORT_TRANSPORTABLE_01 的转储文件集为:
   C:\TEMP\EXP_CROSSTBS.DMP
 作业 "SYSTEM"."SYS_EXPORT_TRANSPORTABLE_01" 已于 10:48 成功完成

3、在源库对cross os的表空间数据文件进行转换
 SQL>select platform_id,platform_name,.endian_format from v$transportable_platform ;
 
  PLATFORM_ID PLATFORM_NAME                                                                    ENDIAN_FORMAT
  ----------- -------------------------------------------------------------------------------- --------------
            1 Solaris[tm] OE (32-bit)                                                          Big
            2 Solaris[tm] OE (64-bit)                                                          Big
            7 Microsoft Windows IA (32-bit)                                                    Little
           10 Linux IA (32-bit)                                                                Little
            6 AIX-Based Systems (64-bit)                                                       Big
            3 HP-UX (64-bit)                                                                   Big
            5 HP Tru64 UNIX                                                                    Little
            4 HP-UX IA (64-bit)                                                                Big
           11 Linux IA (64-bit)                                                                Little
           15 HP Open VMS                                                                      Little
            8 Microsoft Windows IA (64-bit)                                                    Little
            9 IBM zSeries Based Linux                                                          Big
           13 Linux 64-bit for AMD                                                             Little
           16 Apple Mac OS                                                                     Big
           12 Microsoft Windows 64-bit for AMD                                                 Little
  
  15 rows selected
  C:\>
  C:\>rman catalog rman/rman target sys/dddddd
  
  恢复管理器: 版本10.1.0.2.0 - Production
  
  Copyright (c) 1995, 2004, Oracle.  All rights reserved.
  
  连接到目标数据库: TRAIN (DBID=1113606269)
  连接到恢复目录数据库
  
  RMAN> convert tablespace crosstbs to platform 'Microsoft Windows IA (32-bit)'
  2> format ='c:\temp\crosstbs.dbf';
  
  启动 backup 于 08-9月 -10
  正在启动全部恢复目录的 resync
  完成全部 resync
  分配的通道: ORA_DISK_1
  通道 ORA_DISK_1: sid=139 devtype=DISK
  分配的通道: ORA_DISK_2
  通道 ORA_DISK_2: sid=141 devtype=DISK
  分配的通道: ORA_DISK_3
  通道 ORA_DISK_3: sid=134 devtype=DISK
  通道 ORA_DISK_1: 启动数据文件转换
  输入数据文件 fno=00009 name=D:\ORACLE\PRODUCT\10.1.0\DB_1\TRAIN\CROSSTBS.DBF
  已转换的数据文件 = C:\TEMP\crosstbs.dbf
  通道 ORA_DISK_1: 数据文件转换完毕, 经过时间: 00:00:01
  完成 backup 于 08-9月 -10
  
  RMAN>exit

4、在目标库利用ftp把源库产生的dmp文件及转换文件(rman加工生产),下载到目标库
5、在目标库实施impdp导入表空间
  SQL> create user crosstbs identified by crosstbs ; --建立用户
 SQL> grant  resource,connect to crosstbs;  --对用户进行授权
 SQL> create directory dumpdir as 'c:\temp' ;  --IMPDP、EXPDM 要用到
  
  目录已创建。
  
  SQL> grant read,write on directory dumpdir to crosstbs;  --目录授权
  
  授权成功。
 
  C:\temp>impdp system/manager dumpfile=exp_crosstbs.dmp  directory=dumpdir transport_datafiles=c:\temp\crosstbs.dbf
  
  Import: Release 10.1.0.2.0 - Production on 星期三, 08 9月, 2010 12:20
  
  Copyright (c) 2003, Oracle.  All rights reserved.
  
  连接到: Oracle Database 10g Enterprise Edition Release 10.1.0.2.0 - Production
  With the Partitioning, OLAP and Data Mining options
  已成功加载/卸载了主表 "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01"
  启动 "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01":  system/******** dumpfile=exp_cross
  tbs.dmp directory=dumpdir transport_datafiles=c:\temp\crosstbs.dbf
  处理对象类型 TRANSPORTABLE_EXPORT/PLUGTS_BLK
  处理对象类型 TRANSPORTABLE_EXPORT/TABLE
  处理对象类型 TRANSPORTABLE_EXPORT/TTE_POSTINST/PLUGTS_BLK
  作业 "SYSTEM"."SYS_IMPORT_TRANSPORTABLE_01" 已于 12:20 成功完成
  
6、在目标库对导入的crosstbs os表空间进行read write操作
 SQL>conn / as sysdba
 SQL> alter tablespace crosstbs read write;
 
 表空间已更改。
 SQL> conn crosstbs/crosstbs
 已连接。
 SQL> select * from test;
 
          A
 ----------
          1
          2
 
 SQL>
 
阅读(1354) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-09-10 20:21:31

很好的, 收藏了 推荐一个博客,提供很多免费软件编程电子书下载: http://free-ebooks.appspot.com