1.rman克隆
https://docs.oracle.com/en/database/oracle/oracle-database/19/bradv/rman-duplicating-databases.html#GUID-EA6E8219-56BF-471C-AC5A-DFC55E760806
Duplicating Databases
1.2类型
文档参考
Backup-Based Duplication with a Target Connection
也就是TARGET到源数据库和AUXILIARY辅助实例,如图
Backup-Based Duplication Without a Target Connection
TARGET到的不是源数据库而是catalog库,如图
存储在磁带备份上的设备不支持这种方式

Backup-Based Duplication Without a Target Database and Recovery Catalog Connection
这种方式不连接到target或catalog,而是连接到辅助实例使用目标主机的备份来执行复制。
总的来说
- 基于 Active Database
- 基于 BACKUP
对于Active database duplicate来说,在克隆数据库时不用对Source备份,这对于大数据特别是T级别的数据库来说优点非常明显,复制前不需要进行备份,减少了备份和传送备份的时间,同时节省备份空间。
源库必须归档
1.3Active Database Duplication
上面分类所示,关于active的又有这也两种方式:
- 使用镜像备份的
- 使用备份片的
一个主动推给辅助实例,一个是复制实例主动去拉
1.3.1Using Image Copies(push)
RMAN TARGET连接到源库和AUXILIARY辅助实例,通过网络将数据文件传输到辅助实例,这也被称为基于push的方法。这种方法可能会消耗源库的额外资源,可以rman分配通道复制来把握性能影响。
1.3.2Using Backup Sets
RMAN TARGET连接到源库和AUXILIARY辅助实例,辅助实例通过 Oracle 网络服务连接到源库,辅助实例主动通过网络从源库检索所需的数据文件后"拉"过来
Active Database Duplication使用Backup Sets在12.1后才可以使用
使用备份集的好处:
1.rman压缩未使用的块,减少网络传输消耗
2.源库上可以并行创建使用
3.可以在源库的备份集上加密

2.异机在线克隆示例:
2.1环境
主机db1克隆到db2,ip分别为192.168.32.171和192.168.32.172
两台环境相同,相关目录和sid等都一样,只是db2没有数据
无论是基于已有的备份的克隆还是基于活动库的克隆,都使用:
DUPLICATE DATABASE to orcl FROM ACTIVE DATABASE;
oracle会自行连接到target判断
使用nofilenamecheck选项后将不会主动检查重复名称,环境相同一定要带上
克隆是要排除某些表空间使用:
SKIP TABLESPACE HR, SH
但注意要检查自包含
2.2步骤
一些关键步骤:
1.创建辅助实例的Oracle口令文件
2.建立到辅助实例的Oracle Net连接(监听文件增加库的静态注册,本地命名增加本地远程库的名字)
3.创建辅助实例的初始化参数文件,并创建相关目录
4.在NOMOUNT模式下启动辅助实例
5.装载或打开目标数据库(确保归档开启)
6.确保归档重做日志文件可用
7.根据需要分配辅助通道
8.执行DUPLICATE命令
#由于环境一致,db2直接使用db1的pfile和密码文件,无需更改
#相关日志和数据存放的目录都已创建(闪回区,归档目录)
#两边机器都加添加对方的hosts解析
#注册静态监听,listener.ora添加
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(GLOBAL_DBNAME = orcl)
(ORACLE_HOME = /u01/app/oracle/product/19.3/dbhome_1)
(SID_NAME = orcl)
)
)
#重启监听,确认注册
#db2使用pfile启动
SQL> startup nomount pfile='/u01/app/oracle/product/19.3/dbhome_1/dbs/initorcl.ora'
ORACLE 例程已经启动。
Total System Global Area 1543500872 bytes
Fixed Size 9135176 bytes
Variable Size 989855744 bytes
Database Buffers 536870912 bytes
Redo Buffers 7639040 bytes
#在d

本文围绕Oracle数据库的RMAN克隆展开,介绍了RMAN克隆的类型,如基于Active Database和基于BACKUP,其中Active Database Duplication又分使用镜像备份和备份片两种方式。还给出异机在线克隆示例,包括环境、步骤、克隆日志等内容,推荐基于活动数据库库的克隆方式。
最低0.47元/天 解锁文章
1万+

被折叠的 条评论
为什么被折叠?



