基于RMAN的同机数据库克隆
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入 Starting restore at 2013/07/25 14:33:29 ---开始restore allocated channel: ORA_AUX_DISK_1 channel ORA_AUX_DISK_1: SID=134 device type=DISK channel ORA_AUX_DISK_1: starting datafile back
欢迎进入Oracle社区论坛,与200万技术人员互动交流 >>进入
Starting restore at 2013/07/25 14:33:29 --->开始restore
allocated channel: ORA_AUX_DISK_1
channel ORA_AUX_DISK_1: SID=134 device type=DISK
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: restoring control file --->首先restore controlfile
channel ORA_AUX_DISK_1: reading from backup piece /u01/database/sybo3/flash_recovery_area/SYBO3/autobackup/2013_07_25/
o1_mf_s_821695291_8z0x1vsf_.bkp
channel ORA_AUX_DISK_1: piece handle=/u01/database/sybo3/flash_recovery_area/SYBO3/autobackup/2013_07_25/
o1_mf_s_821695291_8z0x1vsf_.bkp tag=TAG20130725T084131
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01 -->controlfile restore完成
output file name=/u01/database/sybo5/controlf/control01.ctl -->output到的位置
output file name=/u01/database/sybo5/controlf/control02.ctl -->注意此时的控制文件中记录的信息依旧是sybo3的,即target db
Finished restore at 2013/07/25 14:33:30
database mounted -->数据库切换到mount状态,对应语句alter clone database mount
contents of Memory Script: -->这些SQL语句用于设置auxiliary db 数据文件位置
{
set until scn 886687; -->Oracle自动设定了相应的scn
set newname for datafile 1 to
"/u01/database/sybo5/oradata/system01.dbf";
set newname for datafile 2 to
"/u01/database/sybo5/oradata/sysaux01.dbf";
set newname for datafile 3 to
"/u01/database/sybo5/oradata/undotbs01.dbf";
set newname for datafile 4 to
"/u01/database/sybo5/oradata/users01.dbf";
set newname for datafile 5 to
"/u01/database/sybo5/oradata/example01.dbf";
restore --> 发布restore命令
clone database
;
}
executing Memory Script
executing command: SET until clause
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
executing command: SET NEWNAME
Starting restore at 2013/07/25 14:33:35 -->开始数据文件的restore
using channel ORA_AUX_DISK_1 -->根据控制文件的信息读取备份集并还原到set newname位置
channel ORA_AUX_DISK_1: starting datafile backup set restore
channel ORA_AUX_DISK_1: specifying datafile(s) to restore from backup set
channel ORA_AUX_DISK_1: restoring datafile 00001 to /u01/database/sybo5/oradata/system01.dbf
channel ORA_AUX_DISK_1: restoring datafile 00002 to /u01/database/sybo5/oradata/sysaux01.dbf
channel ORA_AUX_DISK_1: restoring datafile 00003 to /u01/database/sybo5/oradata/undotbs01.dbf
channel ORA_AUX_DISK_1: restoring datafile 00004 to /u01/database/sybo5/oradata/users01.dbf
channel ORA_AUX_DISK_1: restoring datafile 00005 to /u01/database/sybo5/oradata/example01.dbf
channel ORA_AUX_DISK_1: reading from backup piece /u01/database/sybo3/flash_recovery_area/SYBO3/backupset/2013_07_25/
o1_mf_nnndf_TAG20130725T083959_8z0wz06c_.bkp
channel ORA_AUX_DISK_1: piece handle=/u01/database/sybo3/flash_recovery_area/SYBO3/backupset/2013_07_25/
o1_mf_nnndf_TAG20130725T083959_8z0wz06c_.bkp tag=TAG20130725T083959
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:01:15 -->完成数据文件restore
Finished restore at 2013/07/25 14:34:50
contents of Memory Script: -->下面的脚本将新的数据文件全部更新到控制文件
{
switch clone datafile all;
}
executing Memory Script
datafile 1 switched to datafile copy
input datafile copy RECID=7 STAMP=821716490 file name=/u01/database/sybo5/oradata/system01.dbf
datafile 2 switched to datafile copy
input datafile copy RECID=8 STAMP=821716491 file name=/u01/database/sybo5/oradata/sysaux01.dbf
datafile 3 switched to datafile copy
input datafile copy RECID=9 STAMP=821716491 file name=/u01/database/sybo5/oradata/undotbs01.dbf
datafile 4 switched to datafile copy
input datafile copy RECID=10 STAMP=821716491 file name=/u01/database/sybo5/oradata/users01.dbf
datafile 5 switched to datafile copy
input datafile copy RECID=11 STAMP=821716491 file name=/u01/database/sybo5/oradata/example01.dbf
contents of Memory Script: -->下面的脚本Oracle自动设置了scn后发布recover命令
{
set until scn 886687;
recover
clone database
delete archivelog
;
}
executing Memory Script
executing command: SET until clause
Starting recover at 2013/07/25 14:34:51 -->下面使用archivelog进行recover
using channel ORA_AUX_DISK_1
starting media recovery
archived log for thread 1 with sequence 16 is already on disk as file /u01/database/sybo3/flash_recovery_area/SYBO3/
archivelog/2013_07_25/o1_mf_1_16_8z16rk6o_.arc -->此时运用到了一个sybo3已经存在的归档日志,sequence 为16
channel ORA_AUX_DISK_1: starting archived log restore to default destination -->接下来还原归档日志到缺省位置
channel ORA_AUX_DISK_1: restoring archived log
archived log thread=1 sequence=15 -->从备份的归档日志中读取 sequence为15 的
channel ORA_AUX_DISK_1: reading from backup piece /u01/database/sybo3/flash_recovery_area/SYBO3/backupset/2013_07_25/
o1_mf_annnn_TAG20130725T084129_8z0x1syh_.bkp
channel ORA_AUX_DISK_1: piece handle=/u01/database/sybo3/flash_recovery_area/SYBO3/backupset/2013_07_25/
o1_mf_annnn_TAG20130725T084129_8z0x1syh_.bkp tag=TAG20130725T084129
channel ORA_AUX_DISK_1: restored backup piece 1
channel ORA_AUX_DISK_1: restore complete, elapsed time: 00:00:01
archived log file name=/u01/database/sybo5/flash_recovery_area/SYBO5/archivelog/2013_07_25/o1_mf_1_15_8z1krh5x_.arc thread=1 sequence=15
channel clone_default: deleting archived log(s) -->删除归档日志
[1] [2] [3] [4]
推荐阅读
-
基于B-树和B+树的使用:数据搜索和数据库索引的详细介绍
-
基于Python的SQL Server数据库实现对象同步轻量级
-
C#基于SQLiteHelper类似SqlHelper类实现存取Sqlite数据库的方法
-
PHP数据库操作之基于Mysqli的数据库操作类库
-
php基于session实现数据库交互的类实例
-
基于Docker的PHP调用基于Docker的Mysql数据库
-
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
-
基于B-树和B+树的使用:数据搜索和数据库索引的详细介绍
-
PHP封装的数据库模型Model类完整示例【基于PDO】
-
基于Enterprise Library的Winform开发框架实现支持国产达梦数据库的扩展操作