利用RMAN将数据库转换到不同平台上

可传送的tablespace特性——直接在Oracle实例之间复制数据文件,而不卸载和加载数据——是在Oracle 8i中引入的,并从那时开始成为一种功能性。一开始,要转移的tablespace和目的数据库必须要具有相同大小的模块。Oracle 9i中增加的多种模块大小的支持克服了这种局限性。现在,在Oracle 10g中,平台的限制也在很大程度上被解决了。 恢复管理器(Recovery Manager,RMAN)程序中包括了一个新的CONVERT(转换)命令,你可以将其用来进行平台间的移动。小到一个数据文件,大到整个数据库,都可以在这个命令的帮助下完成传送。

在平台间移动,经常需要进行转换的原因就在于计算机以不同的方式储存多字节数字。Endianness(字节顺序)这个术语所描述的就是这个,主要的两种组合是big-endian(随着内存地址的递增,值从高到低排列)和small-endian(随着内存地址的递增,值从低到高排列)。要正确地解释tablespace中的数据,字节要根据所用的操作系统平台正确有序排列。

视图V$TRANSPORTABLE_PLATFORM列出了RMAN可以转换的平台。每一个都有一个平台名称和字节顺序格式。通过从这个视图中选择,你可以看到源实例和目的实例是否使用相同的字节顺序。

CONVERT命令复制文件,而不是就地对它们进行操作,这样就更加安全,但是需要有足够的额外硬盘空间来保存这两种形式。

CONVERT命令主要有三种形式:

CONVERT TABLESPACE只用在源系统中,将所请求的tablespace中所有的数据文件转换成目标平台的格式。
CONVERT DATAFILE只用在目的系统中,如果CONVERT TABLESPACE没有用在源系统中的话(或者需要转换文件名),因为被传送的数据文件还没有和tablespace相关联,所以它们必须作为数据文件被转换。
CONVERT DATABASE转换其它结构,如未完成片段、参数文件以及所有的参数tablespace。控制文件和重做日志文件被重建。仅对于这一选择来说,源系统和目标系统必须具有相同的字节顺序。
即使两个系统使用相同的字节顺序,你仍然可以从CONVERT命令获益。FORMAT(格式化)子句使你能够转换路径名,还有一个用处就是从ASM硬盘组复制数据文件和将数据文件拷入其中。

列表A显示的是一个在Windows平台源系统(little-endian)中RMAN会话的例子,将USERS tablespace转化为IBM z系列目的系统(big-endian)。最初tablespace被设为只读,使用RMAN SQL命令。然后,CONVERT语句把文件复制到闪电恢复区并将其转换。最后,源tablespace被返回为读/写状态。此时,被复制的文件就可以被复制到目的服务器了。

Z:>rman

Recovery Manager: Release 10.2.0.1.0 - Production on Wed Jan 3 21:00:46 2007

Copyright (c) 1982, 2005, Oracle. All rights reserved.

RMAN> connect target sys/password@orcl

connected to target database: ORCL (DBID=1106543623)

RMAN> SQL 'ALTER TABLESPACE users READ ONLY';

using target database control file instead of recovery catalogsql statement: ALTER TABLESPACE users READ ONLY

RMAN> CONVERT TABLESPACE users
2> TO PLATFORM 'IBM zSeries Based Linux';

Starting backup at 03-JAN-07
allocated channel: ORA_DISK_1
channel ORA_DISK_1: sid=145 devtype=DISK
channel ORA_DISK_1: starting datafile conversion
input datafilefno=00004 name=C:ORACLEPRODUCT.2.0ORADATAORCLUSERS01.DBF
converted datafile=C:ORACLEPRODUCT.2.0DB_1DATABASEDATA_D-ORCL_I-11065436
23_TS-USERS_FNO-4_01I6JT63
channel ORA_DISK_1: datafile conversion complete, elapsed time: 00:00:03
Finished backup at 03-JAN-07

RMAN> SQL 'ALTER TABLESPACE users READ WRITE';
sql statement: ALTER TABLESPACE users READ WRITE

RMAN> exit

Recovery Manager complete.
Z:>
Bob Watkins(OCP、MCDBA、MCSE、MCT)具有从事技术培训师、咨询师和数据库管理员的25年计算机职业经验。

时间: 2024-10-23 06:18:30

利用RMAN将数据库转换到不同平台上的相关文章

【MOS】如何利用RMAN可传输表空间迁移数据库到不同字节序的平台(文档 ID 1983639.1)

如何利用 RMAN 可传输表空间迁移数据库到不同字节序的平台 (文档 ID 1983639.1) 适用于: Oracle Database - Enterprise Edition - 版本 10.1.0.2 到 12.1.0.1 [发行版 10.1 到 12.1]本文档所含信息适用于所有平台******************* 警告 ************* Document 1334152.1 Corrupt IOT when using Transportable Tablespace

利用RMAN转移数据和EXP/IMP转移数据的实测比较

比较|数据 由于工程需要经常将客户的现场数据导出到公司的开发环境中,随着客户现场数据量的不断增大,原先 使用的导出导入的方法需要花费越来越长的时间,所以测试一下RMAN的效率,验证是否能用恢复RMAN备 份的方法来代替以往的EXP/IMP方法.原本想过用传输表空间的方法,但是由于我们通常在创建数据库的 时候就给业务所用的表空间创建了很大的数据文件,这样在传输表空间的copy数据文件的步骤上会花费 很长的时间,所以还是决定测试一下RMAN了. 测试目的:实现对于JHJKREC用户的数据转移. 在1

使用rman复制数据库

数据|数据库 -------------------------------------------- 实验环境:windows + oracle 10.1.0.2.0 原数据库:ning[归档模式]  复制数据库:test Author:NinGoo    2005-3-27 -------------------------------------------   在同一台server上使用rman的Duplicate Database创建复制数据库.   1.    创建新的instanc

ArcGIS中利用ArcMap将地理坐标系转换成投影坐标系(从WKID=4326到WKID=102100)

原文:ArcGIS中利用ArcMap将地理坐标系转换成投影坐标系(从WKID=4326到WKID=102100)            对于非地理专业的开发人员,对与这些生涩的概念,我们不一定都要了解,但是我们要理解,凡是以经纬度为单位的都是地理坐标系,因为它归根结底是一个椭球体,只不过各个国家为了反映该国家所在区域地球的真实形状,而采用不同的数学模型对本不是椭球体的地球进行椭球体化.而投影坐标系,是对地理坐标系按照某种方式投影到平面上的,所以可以认为它是一个平面坐标系,单位自然是米或千米.  

【DG】利用闪回数据库(flashback)修复Failover后的DG环境

利用闪回数据库(flashback)修复Failover后的DG环境   1.1  BLOG文档结构图       1.2  前言部分 1.2.1  导读和注意事项 各位技术爱好者,看完本文后,你可以掌握如下的技能,也可以学到一些其它你所不知道的知识,~O(∩_∩)O~: ① Failover后DG环境的恢复方法(重点) ② DG的基本维护操作 ③ GC客户端软件的安装 ④ 利用GC快速搭建一套DG环境 ⑤ Failover和Switchover的区别 ⑥ 其它维护操作   Tips: ① 本文

[原创]RMAN复制数据库

  RMAN复制数据库 通过使用数据库备份,DBA可以在同一服务器或其它服务器上建立副本数据库.这个副本数据库可以和主数据库有相同的名称(拷贝)或与主数据库名称不同(克隆).ORACLE在数据库拷贝和数据库克隆之间惟一不同的是拷贝的数据库不能更改名称.使用RMAN的复制数据库特性,可以从RMAN备份创建一个新的数据库,并为这个副本数据库保留已有的数据库名称或者赋予新的名称. RMAN术语和命令: A.                辅助数据库(Auxiliary database):RMAN将目

[原创]RMAN备用数据库(逻辑dataguard)

  RMAN备用数据库 1.介绍几个新RMAN命令 INCLUDE CURRENT CONTROLFILE FOR STANDBY:在备份命令中包含一个备用控制文件,RMAN为了创建备用数据库必须在其备份中有一个备用控制文件. DUPLICATE TARGET DATABASE FOR STANDBY:创建一个副本数据库作为目标的备用数据库. DORECOVER:从目标数据库用归档日志备份恢复备用数据库.一旦备用数据库的创建完成,RMAN将对备用数据库应用主数据库中的所有归档日志,一直到RMAN

asp中利用数组实现数据库记录的批量录入方法

数据|数据库|数组 asp中利用数组实现数据库记录的批量录入方法(原创) 演示:http://www.zwtd.com/1/yanek/n/needdj2.asp <% rem 文章题目 asp中利用数组实现数据库记录的批量录入方法(原创)作者:yanek联系email:aspboy@263.net%> 包括两个文件 1.allneeddj.asp:实现表单的生成 2. allneeddjresult.asp 处理表单批量录入 3.hbedu.mdb :数据库文件 其数据库结构如下 provi

代码实现数据库转换[sql2000 VS DBF格式]

数据|数据库|转换  这里,就SqlServer,DBF两种格式的转化问题做个总结. 一: 从dBase文件中,导入数据到SQL数据库中,很简单,直接用下面的语句: /*===================================================================*/--如果接受数据导入的表已经存在insert into 表 select * from openrowset('MICROSOFT.JET.OLEDB.4.0','dBase 5.0;DATA