随笔 - 746  文章 - 0  评论 - 39  阅读 - 79万

Oracle学习笔记:使用rman duplicate {to|for} 创建数据库

可以这么理解:利用rman创建duplicate数据库本质上 和 利用 dbca 创建数据库没有什么两样。只是表现形式不同而已。

要想成功,关键条件:

1.rman是伪服务端工具:可以在客户端运行,但必须读取本地文件!因此。target备份必须在本地可以访问得到。至于路径,保持和target的一致最好,否则必须手工catalog。

2.db_name问题:本机必须不同,异机无所谓了!

3.duplicate数据库的文件名和路径问题,可以使用复杂的命令设置,其实omf更简单!

4.网上许多案例都说可以通过oracle用户认证的方式连接到auxiliary实例,但俺总不成功,不知怎么回事。性质上同第“1”点。即必须在duplicate目标机器上操作,且Oracle_sid=duplicate数据库的sid。补充:使用静态监听解决该问题。

5.duplicate的实例必须是nomount

6.target的redo记录保持干净,在duplicate之前,最好--必须:alter system archive log current 以下,否则rman不会使用比较新 的备份。这家伙似乎能根据:目录中已有的有效backupset 和 archivelog 确定最新的备份

 

注意点:

1.本机duplicate时,如果duplicate数据库初始化参数 没有指明 使用omf,则需要指定db_file_name_convert 参数。唉,俺使用效果不佳!

2.本机duplicate时,如果duplicate数据库初始化参数 指明 使用omf,则无需指定任何参数

3.异机duplicate时,如果duplicate数据库的datafile 全路径名不想改变,需指定nofilenamecheck

4.所有的方式均可以通过:rman 的set newname for {tempfile|datafile}解决。强烈推荐!

 

 

 

 

posted on   jinzhenshui  阅读(530)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)

点击右上角即可分享
微信分享提示