ORACLE_OCP之数据迁移

ORACLE_OCP之数据迁移

  • 文章目标:
    • 确定平台的字节序格式以及RMAN CONVERT命令的使用
    • 使用镜像副本或备份集在数据库之间传输表空间
    • 使用数据文件或备份集传输数据库

一、跨平台数据迁移

  • 跨平台传输数据库,数据文件和表空间:
    • 跨平台迁移(具有不同的字节序格式-UNIX/LINUX)
    • 基于镜像副本和备份集
    • 使用不一致的表空间备份
  • 优点:
    • 减少平台迁移的停机时间
    • 压缩和多路复制
    • 不存储在控制文件中,不用于常规还原操作

二、以最少的停机时间传输数据

  • 考虑所需的数据库打开模式和字节序格式:
    • 数据库传输:只读,相同字节序格式
    • 表空间传输:READ WRITE,不同的字节序格式
  • 举例:
    • 1.创建表空间增量0级备份并将其应用于目标。
    • 2.创建增量备份并将其应用于目标。
    • 3.重复操作:创建并应用增量备份。(备份应该越来越小。)
    • 4.在只读模式下执行最终增量备份,应用它,然后打开彼此一致的两个数据库。

三、传输带有镜像副本的表空间

在这里插入图片描述

四、确定平台的字节序格式

  • 跨平台移动表空间:

    • 简化在数据仓库和数据集市之间的数据移动
    • 允许数据库从一个平台迁移到另一个平台
    • 源平台和目标平台上的字符集相同
  • 支持的平台及其字节序格式列表:

    SQL> SELECT * FROM V$TRANSPORTABLE_PLATFORM;

  • 确定源平台和目标平台的字节序格式:

    SELECT tp.endian_format
    FROM v$transportable_platform tp, v$database sp
    WHERE tp.platform_name = sp.platform_name;

五、使用RMAN CONVERT命令

  • RMAN:
    • 将表空间,数据文件或数据库转换为目标平台的格式
    • 不更改输入文件
    • 将转换后的文件写入到输出目标
    • 可以在源平台或目标平台上隐形操作
    • 假设您启动了相关的数据传输
rman target sys@orcl //rman target /
RMAN> ALTER TABLESPACE bartbs READ ONLY;

RMAN> CONVERT TABLESPACE bartbs
   TO PLATFORM 'Solaris Operating System (x86-64)'
   FORMAT '/tmp/transport/%U';

六、数据库迁移:使用数据文件

  • 概括可移动表空间功能。
  • 数据可以轻松地从数据仓库环境分发到较小的数据集市平台上。
  • 数据库可以非常快地从一个平台迁移到另一个平台。

在这里插入图片描述

七、数据库迁移过程

  • 以只读模式打开数据库,并且COMPATIBLE = 10.0.0

在这里插入图片描述

八、数据库迁移/传输:转换

在这里插入图片描述

九、数据库迁移:示例1

在这里插入图片描述

$ sqlplus / as sysdba
SQL> startup mount;
SQL> alter database open read only;
SQL> host rman target=/
RMAN> CONVERT DATABASE TRANSPORT SCRIPT ‘crdb.sql’ NEW DATABASE ‘newdb’ TO PLATFORM ‘Microsoft Windows IA (32-bit)’ FORMAT ‘/tmp/%U’;

DBMS_TDB.CHECK_DB(‘Microsoft Windows IA(32位)’)(HP的安腾32位服务器)

$ sqlplus / as sysdba
SQL> @crdb.sql

十、数据库迁移:示例2

在这里插入图片描述

$ sqlplus / as sysdba
SQL> startup mount;
SQL> alter database open read only;
SQL> host rman target=/
RMAN> CONVERT DATABASE ON TARGET PLATFORM CONVERT SCRIPT ‘cnvt.sql’ TRANSPORT SCRIPT ‘crdb.sql’ NEW DATABASE ‘newdb’ FORMAT ‘/tmp/%U’;

DBMS_TDB.CHECK_DB(‘Microsoft Windows IA(32位)’)(HP的安腾32位服务器)

$ sqlplus / as sysdba
SQL> host rman target=/
RMAN> @cnvt.sqlRMAN> exit;SQL> @crdb.sql

十一、数据库迁移:注意事项

  • 在目标平台上创建密码文件。
  • 传输源数据库中使用的BFILE。
  • 生成的PFILE和传输脚本使用OMF。
  • 使用DBNEWID更改DBID。

十二、使用备份集传输数据

在这里插入图片描述

十三、具有备份集的数据库传输

  • 1.验证先决条件:

    • COMPATIBLE: Greater or equal 12.0
    • OPEN_MODE: Read only
  • 2.启动RMAN会话以连接到源数据库.

    RMAN> CONNECT TARGET sys/p@orcl

  • 3.在V$TRANSPORTABLE_PLATFORM中查询目标平台的确切名称和相关字节序信息.

  • 4.备份源数据库:

    RMAN> BACKUP TO PLATFORM=‘HP Tru64 UNIX’
    FORMAT ‘/bkp_dir/trans_U%’ DATABASE;

  • Or:

    • RMAN> BACKUP FOR TRANSPORT FORMAT ‘/bkp_dir/trans_U%’
      DATABASE;
  • 5.与源数据库断开连接。

  • 6.移动备份集和数据泵导出

  • 7.转储文件到目标主机。

  • 8.以TARGET连接到目标主机。

    RMAN> CONNECT TARGET sys/p@orcl2

  • 9.使用RESTORE命令还原完整备份集

    RMAN> RESTORE FOREIGN DATABASE TO NEW
    FROM BACKUPSET ‘/bkp_dir/trans_U%’;

十四、传输表空间

  • 1.验证先决条件。

  • 2.在源数据库中启动RMAN会话。

  • 3.查询目标平台的确切名称和字节序。

  • 4.使表空间为只读。.

    RMAN> ALTER TABLESPACE test READ ONLY;

  • 5.执行跨平台可传输备份和数据泵导出

    • 在目标主机上进行转换

      RMAN> BACKUP FOR TRANSPORT FORMAT ‘/bkp/test.bck’
      DATAPUMP FORMAT ‘/bkp/test.dmp’ TABLESPACE test;

    • 在源主机上进行转换

      RMAN> BACKUP TO PLATFORM ‘HP Tru64 UNIX’
      FORMAT ‘/bkp/test.bck’
      DATAPUMP FORMAT ‘/bkp/test.dmp’ TABLESPACE test;

  • 6.移动备份集和数据泵导出文件,并转储文件到目标主机。

  • 7.将目标主机连接到 RMAN TARGET。

  • 8.恢复已传输备份和数据泵导出。

    RMAN> RESTORE FOREIGN TABLESPACE test
    FORMAT ‘/oracle/test.dbf’
    FROM BACKUPSET ‘/bkp/test.bck’
    DUMP FILE FROM BACKUPSET ‘/bkp/test.dmp’ ;

十五、传输不一致的表空间

  • 修改先前的工作流程:
    • 使用ALLOW INCONSISTENT子句创建跨平台不一致的增量备份。
    • 使用RESTORE FOREIGN TABLESPACE命令还原不一致的跨平台表空间备份。
    • 使用RECOVER FOREIGN DATAFILECOPY命令使用跨平台的增量备份恢复还原的数据文件副本。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值