暂无图片
暂无图片
1
暂无图片
暂无图片
暂无图片

Oracle RMAN duplicate 标准化文档

作者:Digital Observer(施嘉伟)
Oracle ACE Pro: Database
PostgreSQL ACE Partner
11年数据库行业经验,现主要从事数据库服务工作
拥有Oracle OCM、DB2 10.1 Fundamentals、MySQL 8.0 OCP、WebLogic 12c OCA、KCP、PCTP、PCSD、PGCM、OCI、PolarDB技术专家、达梦师资认证、数据安全咨询高级等认证
ITPUB认证专家、PolarDB开源社区技术顾问、HaloDB技术顾问、TiDB社区技术布道师、青学会MOP技术社区专家顾问、国内某高校企业实践指导教师
公众号/墨天轮:Digital Observer;CSDN/PGfans:施嘉伟;ITPUB:sjw1933

一 介绍

1.1 Duplicate介绍

RMAN Duplicate 功能是从Oracle 10g开始诞生;在11g的时候进行了很多增强,免去了10g版本下需要人工复制到备机上过来进行恢复的关键问题。通过11g的Duplicate可以创建一个数据完全相同但DBID不同的数据库。常用于搭建测试库以及搭建DataGuard.
在11g的RMAN Duplicate中可以使用Active database duplicate和Backup-based duplicate两种方法实现。Active database duplicate不需要先把源端数据库进行RMAN备份,只需要源端数据库处于归档模式下即可通过网络对目标端数据库进行恢复,且恢复完成后能够自动Open.

二 使用

2.1 Duplicate搭建辅助数据库

目标端操作:
(1)创建参数文件(db_file_name_convert以及log_file_name_convert)
//辅助数据库db_name可以不同
(2) 创建密码文件
(3)创建相应目录
(4)配置静态注册
Service “aux” has 2 instance(s).
Instance “aux”, status UNKNOWN, has 1 handler(s) for this service…
Instance “aux”, status BLOCKED, has 1 handler(s) for this service…
(5)启动至nomount状态
源端操作:
方式1:
1.配置tnsname.ora文件。
2.源端进行数据库全库备份
RMAN> backup as compressed backupset database plus archivelog;
3.将备份片传输至目标端相同目录下。
4.RMAN同时连接源端以及目标端.
[oracle@db]$rman target sys/oracle@orcl auxiliary sys/oracle@aux
5.执行duplicate复制

RMAN> run{
> allocate auxiliary channel aux1 device type disk;  --必须分配一个辅助通道
> duplicate target database to aux;
> }

方式 2:
1.配置tnsname.ora文件。
2.RMAN同时连接源端以及目标端.

[oracle@db]$rman target sys/oracle@orcl auxiliary sys/oracle@aux
Recovery Manager: Release 11.2.0.4.0 - Production on Sun Jun 21 21:59:11 2020
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: ORCL (DBID=449288230)
connected to auxiliary database: AUX (not mounted)

3.执行duplicate复制
RMAN> duplicate target database to aux from active database nofilenamecheck;

2.2 Duplicate搭建DataGuard

备库操作:

  1. 创建参数文件(db_file_name_convert以及log_file_name_convert)
    //同目录结构则db/log_file_name_convert则不用修改
    //db_name必须相同
  2. 同步密码文件
  3. 配置静态注册

其他备库参数按需配置!
主库操作:

  1. 开启强制日志
  2. 配置日志传输参数
  3. 配置tnsname.ora
  4. RMAN同时连接源端以及目标端.
[oracle@db]$rman target sys/oracle@orcl auxiliary sys/oracle@orcldg
Recovery Manager: Release 11.2.0.4.0 - Production on Sun Jun 21 21:59:11 2020
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.
connected to target database: ORCL (DBID=449288230)
connected to auxiliary database: ORCL (not mounted)
  1. 执行duplicate复制
    RMAN>duplicate target database for standby from active database nofilenamecheck

//from active database
//通过网络直接传输,如果不使用此方式,需要将主库的备份拷贝到备库相应位置。
//恢复完之后备库自动启动到mount状态

其他主库参数按需配置!
此时备库开启日志应用即同步完成!

2.3 Duplicate nofilenamecheck参数解释

如果在复制时,位置不同时,
我们会用参数db_file_name_convert 对文件位置进行转换。
但是在这个复制示例中我们用的是相同的位置。 所以这里必须加上nofilenamecheck参数。
该参数通知复制操作不必在执行还原操作前确认文件名是不同的。
如果没有指定nofilenamecheck参数,rman会给出如下错误:

RMAN-05001: auxiliary filename  /DBSoft/oracle/oradata/woo/users01.dbf conflicts with a file used by the target database

2)检查网络及存储性能瓶颈。
hhh6.jpg

最后修改时间:2025-02-24 14:21:10
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论