Oracle数据迁移之克隆数据库
DBA有时需要克隆数据库以便测试备份和恢复策略。如果数据库校小,简单的expdp/impdp就能搞定了,但是多数生产环境中的数据库是没法这么干的。克隆数据库有以下几种不同的方法:
使用RMAN的duplicate命令使用OEM中的DatabaseControl通过SQL*PLUS手工拷贝
在这里,方少想通过一个实验向大家演示一下如何通过RMAN工具来克隆一个运行中的数据库。RMAN提供了duplicate命令,此命令使用一个数据库的备份创建一个新数据库。文件被复原到目标数据库,之后,执行一个不完全的恢复,用openresetlogs选项打开数据库。使用RMAN的好处是上述所有步骤都能自动执行,无需用户干涉。复制数据库可以是原来数据库的完全拷贝,也可以只是包含原数据库的某一个子集。
实验演示环境
服务器A:RedhatEnterpriseLinux5.5+Oracle10gR2服务器B:RedhatEnterpriseLinux4.8+Oracle10gR2
实验目的:将服务器A上正在运行中的ProdDB数据库克隆至服务器B并更名为TestDB一、在服务器A上配置SAMBA,将备份集所在目录共享出来
检查一下服务器上是否安装了samba套件
结果显示未安装samba,所以我们得先把samba套件给装上
编辑/etc/samba/smb.conf文件将ProdDB数据库的备份集以及归档日志所在目录共享出来
注:请确保备份集以及归档日志对于others用户是可读,不然后面在RMAN中duplicate的时候会报错
1作者:倪翔凤
方少OracleDBA之路
在smb.conf文件的最后加上图中所示的那段配置,然后启动samba服务
SSH登录服务器B并挂载服务器A的共享目录至/backup
在服务器B上配置监听:
创建密码文件:
创建相关目录:
2作者:倪翔凤
方少OracleDBA之路
准备一个初始化参数文件initTestDB.ora,内容大致如下:
启动实例并创建spfile文件:
3作者:倪翔凤
方少OracleDBA之路
登录服务器A,配置TNS:
4作者:倪翔凤
方少OracleDBA之路
打开SQL*PLUS,查看当前日志序列号,并切一个归档出来:
打开RMAN,执行duplicate命令进行数据库克隆:
5作者:倪翔凤
方少OracleDBA之路
嗯?虽然最后报了个错,但是关系不大,嘿嘿。
虽然最后报了个错,但是在这之前介质恢复已经完成,所以我们可以用resetlogs方式打开数据库
6作者:倪翔凤
方少OracleDBA之路
恢复临时表空间:
OK!!!至此,克隆操作算是完成啦!!!
下页附上initTestDB.ora初始化参数文件、duplicate.rman、rman.log文件的内容:
7作者:倪翔凤
方少OracleDBA之路
initTestDB.ora
Duplicate.rman
8作者:倪翔凤
方少OracleDBA之路
Rman.log
9作者:倪翔凤
方少OracleDBA之路
10作者:倪翔凤
方少OracleDBA之路
11作者:倪翔凤
方少OracleDBA之路
12作者:倪翔凤
方少OracleDBA之路
好好研究一下最后的这个LOG文件,能够加深你对RMANduplicate命令的理解。下一章:敬请期待,呵呵
13作者:倪翔凤
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- huatuo0.com 版权所有 湘ICP备2023021991号-1
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务