利用RMAN跨平台迁移数据库

1、数据文件字节排序
Oracle平台一般使用两种不同的字节排序方案(尾数格式)。
如果多个平台使用的字节排序方案不同,则需要在RMAN中使用convert命令来将表空间转换为目标平台上所需的格式。可以通过以下查询确定尾数格式:
select endian_format
from v$transportable_platform tp,v$database d
where tp.platform_name=d.platform_name;
2、使用RMAN转换表空间尾数格式
首先,创建保存转换文件副本的目录,接下来将希望转换的表空间设置为只读模式,然后,启动RMAN并使用新的convert tablespace命令。
rman target /
convert tablespace users to platform='AIX-Based Systems(64-bit)' db_file_name_convert='c:\oracle\oradata\betatwo','c:\oracle\admin\transport_aix';
也可以转换目标站点上的数据文件
rman target /
convert datafile='c:\oracle\oradata\betatwo\*' from platform='AIX-Based Systems(64-bit)'  db_file_name_convert='c:\oracle\oradata\betatwo','c:\oracle\admin\transport_aix';
使用的平台名来自于v$transportable_platform视图的platform_name列。
3、跨平台移动数据库
Oracle Database 10g中的RMAN提供了全新的功能以帮助在尾数字节格式相同的平台之间移动数据库。convert database命令结合DBMS_TDP包可以减少在平台之间移动数据库的整体工作负载。操作过程如下:
(1)以只读方式打开数据库
startup mount;
alter database open read only;
(2)使用dbms_tdb.check_db进程来检查数据库状态。该程序应该在打开serveroutput命令时运行:
set serveroutput on;
declare
db_ready boolean;
begin
db_ready:=dbms_tdb.check_db('Microsoft Windows IA (32-bit)',dbms_tdb.skip_readonly);
end;
/
(3)使用dbms_tdb.check_external进程来标识外部对象:
set serveroutput on;
declare
external boolean;
begin
external:=dbms_tdb.check_external;
end;
/
(4)当数据库可以传送时,就可以使用RMAN的convert database命令。RMAN创建数据库移动所需的脚本,但不真正执行移动操作,而是创建移动所需的文件:
CONVERT DATABASE NEW DATABASE 'copydb' transport script 'c:\oracle\copydb\copyscripts' to platform 'Microsoft Windows IA (32-bit)';
可选参数db_file_name_convert允许用户为需要转换的数据文件定义目录:
CONVERT DATABASE NEW DATABASE 'copydb' transport script 'c:\oracle\copydb\copyscripts' to platform 'Microsoft Windows IA (32-bit)' db_file_name_convert 'c:\oracle\product\10.2.0\oradata\rob10r2','c:\oracle\newdbdest';

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/28998293/viewspace-777063/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/28998293/viewspace-777063/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值