首页 > Linux操作系统 > Linux操作系统 > RMAN异机恢复实践
RMAN异机恢复实践。
1、全库备份(包括数据库,控制文件,归档日志)
RMAN> show all;
RMAN 配置参数为:
CONFIGURE RETENTION POLICY TO REDUNDANCY 2;
CONFIGURE BACKUP OPTIMIZATION OFF; # default
CONFIGURE DEFAULT DEVICE TYPE TO DISK; # default
CONFIGURE CONTROLFILE AUTOBACKUP ON;
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE 'DIST' TO 'd:\oracle\bak
\%F';
CONFIGURE CONTROLFILE AUTOBACKUP FORMAT FOR DEVICE TYPE DISK TO 'd:\oracle\bak\%
F';
CONFIGURE DEVICE TYPE DISK PARALLELISM 3;
CONFIGURE DATAFILE BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE ARCHIVELOG BACKUP COPIES FOR DEVICE TYPE DISK TO 1; # default
CONFIGURE CHANNEL DEVICE TYPE DISK FORMAT 'd:\oracle\bak\%d_%T_%s';
CONFIGURE MAXSETSIZE TO UNLIMITED; # default
CONFIGURE SNAPSHOT CONTROLFILE NAME TO 'E:\ORACLE\PRODUCT\DATABASE\SNCFTSTDB.ORA
'; # default
RMAN> @d:\oracle\bak\log\bk.txt
RMAN> run {
2> backup full database include current controlfile;
3> backup archivelog from time 'sysdate-3' format 'D:\oracle\bak\arc_%U.bak' ;
4> copy current controlfile to 'D:\oracle\bak\control_bak.ctl';
5> }
启动 backup 于 14-6月 -08
正在使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=23 devtype=DISK
分配的通道: ORA_DISK_2
通道 ORA_DISK_2: sid=21 devtype=DISK
分配的通道: ORA_DISK_3
通道 ORA_DISK_3: sid=22 devtype=DISK
通道 ORA_DISK_1: 正在启动 full 数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
输入数据文件 fno=00020 name=E:\ORACLE\ORADATA\TSTDB\DATA4_1_01.DBF
输入数据文件 fno=00002 name=E:\ORACLE\ORADATA\TSTDB\UNDOTBS01.DBF
输入数据文件 fno=00001 name=E:\ORACLE\ORADATA\TSTDB\SYSTEM01.DBF
输入数据文件 fno=00013 name=E:\ORACLE\ORADATA\TSTDB\SYSTEM02.DBF
输入数据文件 fno=00005 name=E:\ORACLE\ORADATA\TSTDB\INDX01.DBF
输入数据文件 fno=00003 name=E:\ORACLE\ORADATA\TSTDB\DRSYS01.DBF
输入数据文件 fno=00014 name=E:\ORACLE\ORADATA\TSTDB\ABC.DBF
通道 ORA_DISK_1: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_2: 正在启动 full 数据文件备份集
通道 ORA_DISK_2: 正在指定备份集中的数据文件
输入数据文件 fno=00019 name=E:\ORACLE\ORADATA\TSTDB\TFDS_DATA01.DBF
输入数据文件 fno=00022 name=E:\ORACLE\ORADATA\TSTDB\TFDS_DATA02.DBF
输入数据文件 fno=00008 name=E:\ORACLE\ORADATA\TSTDB\USERS01.DBF
输入数据文件 fno=00010 name=E:\ORACLE\ORADATA\TSTDB\USED_TEST01.DBF
输入数据文件 fno=00009 name=E:\ORACLE\ORADATA\TSTDB\XDB01.DBF
输入数据文件 fno=00006 name=E:\ORACLE\ORADATA\TSTDB\ODM01.DBF
输入数据文件 fno=00017 name=E:\ORACLE\ORADATA\TSTDB\TOOLS02.DBF
输入数据文件 fno=00012 name=E:\ORACLE\TST01.DBF
通道 ORA_DISK_2: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_3: 正在启动 full 数据文件备份集
通道 ORA_DISK_3: 正在指定备份集中的数据文件
输入数据文件 fno=00018 name=E:\ORACLE\ORADATA\TSTDB\USED_TEST02.DBF
输入数据文件 fno=00021 name=E:\ORACLE\ORADATA\TSTDB\TFDS_DATA03.DBF
输入数据文件 fno=00011 name=E:\ORACLE\ORADATA\TSTDB\PERFSTAT.DBA
输入数据文件 fno=00004 name=E:\ORACLE\ORADATA\TSTDB\EXAMPLE01.DBF
输入数据文件 fno=00007 name=E:\ORACLE\ORADATA\TSTDB\TOOLS01.DBF
输入数据文件 fno=00023 name=E:\ORACLE\ORADATA\TSTDB\TT_01_01_.DBF
输入数据文件 fno=00015 name=E:\ORACLE\ORADATA\TSTDB\O1_MF_TBS_4323P200_.DBF
通道 ORA_DISK_3: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_2: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\TSTDB_20080614_261 comment=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:04:52
通道 ORA_DISK_2: 正在启动 full 数据文件备份集
通道 ORA_DISK_2: 正在指定备份集中的数据文件
输入数据文件 fno=00016 name=E:\ORACLE\ORADATA\TSTDB\TST_8K_01.DBF
通道 ORA_DISK_2: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_3: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\TSTDB_20080614_262 comment=NONE
通道 ORA_DISK_3: 备份集已完成, 经过时间:00:04:55
通道 ORA_DISK_1: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\TSTDB_20080614_260 comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:05:11
通道 ORA_DISK_2: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\TSTDB_20080614_263 comment=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:16
完成 backup 于 14-6月 -08
启动 backup 于 14-6月 -08
当前日志已存档
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
通道 ORA_DISK_1: 正在启动存档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =202 记录 ID=509 时间戳=657169904
输入存档日志线程 =1 序列 =203 记录 ID=511 时间戳=657256355
通道 ORA_DISK_1: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_2: 正在启动存档日志备份集
通道 ORA_DISK_2: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =204 记录 ID=513 时间戳=657367734
输入存档日志线程 =1 序列 =205 记录 ID=515 时间戳=657382482
通道 ORA_DISK_2: 正在启动段 1 于 14-6月 -08
通道 ORA_DISK_1: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\ARC_88JITN2J_1_1.BAK comment=NONE
通道 ORA_DISK_1: 备份集已完成, 经过时间:00:00:26
通道 ORA_DISK_2: 已完成段 1 于 14-6月 -08
段 handle=D:\ORACLE\BAK\ARC_89JITN2J_1_1.BAK comment=NONE
通道 ORA_DISK_2: 备份集已完成, 经过时间:00:00:26
完成 backup 于 14-6月 -08
启动 copy 于 14-6月 -08
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
通道 ORA_DISK_1: 已复制当前的控制文件
输出文件名=D:\ORACLE\BAK\CONTROL_BAK.CTL
完成 copy 于 14-6月 -08
启动 Control File and SPFILE Autobackup 于 14-6月 -08
段 handle=D:\ORACLE\BAK\C-3183494620-20080614-01 comment=NONE
完成 Control File and SPFILE Autobackup 于 14-6月 -08
RMAN> **文件结尾**
RMAN>
2、在异机创建服务。
cmd>oradim –NEW –SID ORCL -STARTMODE a
3、修改初始化参数文件与创建密码文件
4、配置监听和TNS
5、创建路径(bdump,udump...等等)
6、复制控制文件
将rman全库备份中copy出来的控制文件备份D:\oracle\bak\control_bak.ctl传到测试机, 然后将其按照参数文件中的控制文件配置复制。这里是复制成如下三个文件:
'D:\oracle\orcl\data\CONTROL01.CTL',
'D:\oracle\orcl\data\CONTROL02.CTL',
'D:\oracle\orcl\data\CONTROL03.CTL'
7、 启动数据库到mount 状态
8、 用RMAN做全库恢复
C:\>rman target /
恢复管理器: 版本9.2.0.1.0 - Production
Copyright (c) 1995, 2002, Oracle Corporation. All rights reserved.
连接到目标数据库: TSTDB (DBID=3183494620)
RMAN> @D:\orcl\restore.TXT
RMAN> RUN{
2> STARTUP FORCE MOUNT;
3> SET NEWNAME FOR DATAFILE 1 TO 'D:\oracle\orcl\data\SYSTEM01.DBF';
4> SET NEWNAME FOR DATAFILE 2 TO 'D:\oracle\orcl\data\UNDOTBS01.DBF';
5> SET NEWNAME FOR DATAFILE 3 TO 'D:\oracle\orcl\data\DRSYS01.DBF';
6> SET NEWNAME FOR DATAFILE 5 TO 'D:\oracle\orcl\data\INDX01.DBF';
7> SET NEWNAME FOR DATAFILE 13 TO 'D:\oracle\orcl\data\SYSTEM02.DBF';
8> SET NEWNAME FOR DATAFILE 14 TO 'D:\oracle\orcl\data\ABC.DBF';
9> SET NEWNAME FOR DATAFILE 20 TO 'D:\oracle\orcl\data\DATA4_1_01.DBF'
;
10>
11> SET NEWNAME FOR DATAFILE 4 TO 'D:\oracle\orcl\data\EXAMPLE01.DBF
';
12> SET NEWNAME FOR DATAFILE 7 TO 'D:\oracle\orcl\data\TOOLS01.DBF
';
13> SET NEWNAME FOR DATAFILE 11 TO 'D:\oracle\orcl\data\PERFSTAT.DBA
';
14> SET NEWNAME FOR DATAFILE 15 TO 'D:\oracle\orcl\data\O1_MF_TBS_4323
P200_.DBF';
15> SET NEWNAME FOR DATAFILE 18 TO 'D:\oracle\orcl\data\USED_TEST02.DB
F ';
16> SET NEWNAME FOR DATAFILE 21 TO 'D:\oracle\orcl\data\TFDS_DATA03.DB
F ';
17> SET NEWNAME FOR DATAFILE 23 TO 'D:\oracle\orcl\data\TT_01_01_.DBF
';
18>
19> SET NEWNAME FOR DATAFILE 6 TO 'D:\oracle\orcl\data\ODM01.DBF
';
20> SET NEWNAME FOR DATAFILE 8 TO 'D:\oracle\orcl\data\USERS01.DBF
';
21> SET NEWNAME FOR DATAFILE 9 TO 'D:\oracle\orcl\data\XDB01.DBF
';
22> SET NEWNAME FOR DATAFILE 10 TO 'D:\oracle\orcl\data\USED_TEST01.DB
F';
23> SET NEWNAME FOR DATAFILE 12 TO 'D:\oracle\orcl\data\TST01.DBF
';
24> SET NEWNAME FOR DATAFILE 17 TO 'D:\oracle\orcl\data\TOOLS02.DBF
';
25> SET NEWNAME FOR DATAFILE 19 TO 'D:\oracle\orcl\data\TFDS_DATA01.DB
F';
26> SET NEWNAME FOR DATAFILE 22 TO 'D:\oracle\orcl\data\TFDS_DATA02.DB
F';
27>
28> SET NEWNAME FOR DATAFILE 16 TO 'D:\oracle\orcl\data\TST_8K_01.DBF'
;
29>
30>
31> RESTORE DATABASE;
32> SWITCH DATAFILE ALL;
33> RECOVER DATABASE;
34> SQL 'ALTER DATABASE OPEN';
35> }
Oracle 例程已启动
数据库已加载
系统全局区域总计 337189908 字节
Fixed Size 453652 字节
Variable Size 125829120 字节
Database Buffers 209715200 字节
Redo Buffers 1191936 字节
正在执行命令: SET NEWNAME
正在使用目标数据库控制文件替代恢复目录
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
正在执行命令: SET NEWNAME
启动 restore 于 14-6月 -08
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=15 devtype=DISK
分配的通道: ORA_DISK_2
通道 ORA_DISK_2: sid=16 devtype=DISK
分配的通道: ORA_DISK_3
通道 ORA_DISK_3: sid=17 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00006恢复到D:\ORACLE\ORCL\DATA\ODM01.DBF
正将数据文件00008恢复到D:\ORACLE\ORCL\DATA\USERS01.DBF
正将数据文件00009恢复到D:\ORACLE\ORCL\DATA\XDB01.DBF
正将数据文件00010恢复到D:\ORACLE\ORCL\DATA\USED_TEST01.DBF
正将数据文件00012恢复到D:\ORACLE\ORCL\DATA\TST01.DBF
正将数据文件00017恢复到D:\ORACLE\ORCL\DATA\TOOLS02.DBF
正将数据文件00019恢复到D:\ORACLE\ORCL\DATA\TFDS_DATA01.DBF
正将数据文件00022恢复到D:\ORACLE\ORCL\DATA\TFDS_DATA02.DBF
通道 ORA_DISK_2: 正在开始恢复数据文件备份集
通道 ORA_DISK_2: 正在指定从备份集恢复的数据文件
正将数据文件00004恢复到D:\ORACLE\ORCL\DATA\EXAMPLE01.DBF
正将数据文件00007恢复到D:\ORACLE\ORCL\DATA\TOOLS01.DBF
正将数据文件00011恢复到D:\ORACLE\ORCL\DATA\PERFSTAT.DBA
正将数据文件00015恢复到D:\ORACLE\ORCL\DATA\O1_MF_TBS_4323P200_.DBF
正将数据文件00018恢复到D:\ORACLE\ORCL\DATA\USED_TEST02.DBF
正将数据文件00021恢复到D:\ORACLE\ORCL\DATA\TFDS_DATA03.DBF
正将数据文件00023恢复到D:\ORACLE\ORCL\DATA\TT_01_01_.DBF
通道 ORA_DISK_3: 正在开始恢复数据文件备份集
通道 ORA_DISK_3: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到D:\ORACLE\ORCL\DATA\SYSTEM01.DBF
正将数据文件00002恢复到D:\ORACLE\ORCL\DATA\UNDOTBS01.DBF
正将数据文件00003恢复到D:\ORACLE\ORCL\DATA\DRSYS01.DBF
正将数据文件00005恢复到D:\ORACLE\ORCL\DATA\INDX01.DBF
正将数据文件00013恢复到D:\ORACLE\ORCL\DATA\SYSTEM02.DBF
正将数据文件00014恢复到D:\ORACLE\ORCL\DATA\ABC.DBF
正将数据文件00020恢复到D:\ORACLE\ORCL\DATA\DATA4_1_01.DBF
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\ORACLE\BAK\TSTDB_20080614_261 tag=TAG20080614T140926 params=NULL
通道 ORA_DISK_1: 恢复完成
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00016恢复到D:\ORACLE\ORCL\DATA\TST_8K_01.DBF
通道 ORA_DISK_2: 已恢复备份段 1
段 handle=D:\ORACLE\BAK\TSTDB_20080614_262 tag=TAG20080614T140926 params=NULL
通道 ORA_DISK_2: 恢复完成
通道 ORA_DISK_3: 已恢复备份段 1
段 handle=D:\ORACLE\BAK\TSTDB_20080614_260 tag=TAG20080614T140926 params=NULL
通道 ORA_DISK_3: 恢复完成
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\ORACLE\BAK\TSTDB_20080614_263 tag=TAG20080614T140926 params=NULL
通道 ORA_DISK_1: 恢复完成
完成 restore 于 14-6月 -08
数据文件 1 已转换成数据文件副本
输入数据文件副本 recid=57 stamp=657389306 文件名=D:\ORACLE\ORCL\DATA\SYSTEM01.DB
F
数据文件 2 已转换成数据文件副本
输入数据文件副本 recid=58 stamp=657389307 文件名=D:\ORACLE\ORCL\DATA\UNDOTBS01.D
BF
数据文件 3 已转换成数据文件副本
输入数据文件副本 recid=59 stamp=657389307 文件名=D:\ORACLE\ORCL\DATA\DRSYS01.DBF
数据文件 5 已转换成数据文件副本
输入数据文件副本 recid=60 stamp=657389308 文件名=D:\ORACLE\ORCL\DATA\INDX01.DBF
数据文件 13 已转换成数据文件副本
输入数据文件副本 recid=61 stamp=657389309 文件名=D:\ORACLE\ORCL\DATA\SYSTEM02.DB
F
数据文件 14 已转换成数据文件副本
输入数据文件副本 recid=62 stamp=657389309 文件名=D:\ORACLE\ORCL\DATA\ABC.DBF
数据文件 20 已转换成数据文件副本
输入数据文件副本 recid=63 stamp=657389310 文件名=D:\ORACLE\ORCL\DATA\DATA4_1_01.
DBF
数据文件 4 已转换成数据文件副本
输入数据文件副本 recid=64 stamp=657389310 文件名=D:\ORACLE\ORCL\DATA\EXAMPLE01.D
BF
数据文件 7 已转换成数据文件副本
输入数据文件副本 recid=65 stamp=657389311 文件名=D:\ORACLE\ORCL\DATA\TOOLS01.DBF
数据文件 11 已转换成数据文件副本
输入数据文件副本 recid=66 stamp=657389312 文件名=D:\ORACLE\ORCL\DATA\PERFSTAT.DB
A
数据文件 15 已转换成数据文件副本
输入数据文件副本 recid=67 stamp=657389313 文件名=D:\ORACLE\ORCL\DATA\O1_MF_TBS_4
323P200_.DBF
数据文件 18 已转换成数据文件副本
输入数据文件副本 recid=68 stamp=657389313 文件名=D:\ORACLE\ORCL\DATA\USED_TEST02
.DBF
数据文件 21 已转换成数据文件副本
输入数据文件副本 recid=69 stamp=657389314 文件名=D:\ORACLE\ORCL\DATA\TFDS_DATA03
.DBF
数据文件 23 已转换成数据文件副本
输入数据文件副本 recid=70 stamp=657389315 文件名=D:\ORACLE\ORCL\DATA\TT_01_01_.D
BF
数据文件 6 已转换成数据文件副本
输入数据文件副本 recid=71 stamp=657389315 文件名=D:\ORACLE\ORCL\DATA\ODM01.DBF
数据文件 8 已转换成数据文件副本
输入数据文件副本 recid=72 stamp=657389316 文件名=D:\ORACLE\ORCL\DATA\USERS01.DBF
数据文件 9 已转换成数据文件副本
输入数据文件副本 recid=73 stamp=657389316 文件名=D:\ORACLE\ORCL\DATA\XDB01.DBF
数据文件 10 已转换成数据文件副本
输入数据文件副本 recid=74 stamp=657389317 文件名=D:\ORACLE\ORCL\DATA\USED_TEST01
.DBF
数据文件 12 已转换成数据文件副本
输入数据文件副本 recid=75 stamp=657389318 文件名=D:\ORACLE\ORCL\DATA\TST01.DBF
数据文件 17 已转换成数据文件副本
输入数据文件副本 recid=76 stamp=657389318 文件名=D:\ORACLE\ORCL\DATA\TOOLS02.DBF
数据文件 19 已转换成数据文件副本
输入数据文件副本 recid=77 stamp=657389319 文件名=D:\ORACLE\ORCL\DATA\TFDS_DATA01
.DBF
数据文件 22 已转换成数据文件副本
输入数据文件副本 recid=78 stamp=657389319 文件名=D:\ORACLE\ORCL\DATA\TFDS_DATA02
.DBF
数据文件 16 已转换成数据文件副本
输入数据文件副本 recid=79 stamp=657389320 文件名=D:\ORACLE\ORCL\DATA\TST_8K_01.D
BF
启动 recover 于 14-6月 -08
使用通道 ORA_DISK_1
使用通道 ORA_DISK_2
使用通道 ORA_DISK_3
正在开始介质的恢复
通道 ORA_DISK_1: 正在启动到默认目标的存档日志恢复
通道 ORA_DISK_1: 正在恢复存档日志
存档日志线程 =1 序列=205
通道 ORA_DISK_1: 已恢复备份段 1
段 handle=D:\ORACLE\BAK\ARC_89JITN2J_1_1.BAK tag=TAG20080614T141443 params=NULL
通道 ORA_DISK_1: 恢复完成
存档日志文件名 =D:\ORACLE\ORCL\ARCH\ARC00205.001 线程 =1 序列 =205
无法找到存档日志
存档日志线程 =1 序列=206
RMAN-00571: ===========================================================
RMAN-00569: =============== ERROR MESSAGE STACK FOLLOWS ===============
RMAN-00571: ===========================================================
RMAN-03002: failure of recover command at 06/14/2008 16:09:20
RMAN-06054: media recovery requesting unknown log: thread 1 scn 120916987976
RMAN>
RMAN> **文件结尾**
RMAN>
7、
SQL> alter database open;
alter database open
*
ERROR 位于第 1 行:
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
alter database open resetlogs
*
ERROR 位于第 1 行:
ORA-00344: 无法重新创建联机日志 'E:\ORACLE\ORADATA\TSTDB\REDO01.LOG'
ORA-27040: skgfrcre: 创建错误,无法创建文件
OSD-04002: Ξ??????
O/S-Error: (OS 21) ???δ?????
SQL> alter database drop logfile group 1;
alter database drop logfile group 1
*
ERROR 位于第 1 行:
ORA-01623: 日志1是线程1的当前日志 - 无法删除
ORA-00312: 联机日志 1 线程 1: 'E:\ORACLE\ORADATA\TSTDB\REDO01.LOG'
ORA-00312: 联机日志 1 线程 1: 'E:\ORACLE\ORADATA\TSTDB\REDO01_2.LOG'
SQL> alter system switch logfile;
alter system switch logfile
*
ERROR 位于第 1 行:
ORA-01109: 数据库未打开
8、用重建控制文件的方法来重建数据库(一定要使用导出文件的后一部分来建)
CREATE CONTROLFILE REUSE DATABASE "TSTDB" RESETLOGS force LOGGING ARCHIVELOG
-- SET STANDBY TO MAXIMIZE PERFORMANCE
MAXLOGFILES 20
MAXLOGMEMBERS 5
MAXDATAFILES 100
MAXINSTANCES 1
MAXLOGHISTORY 113
LOGFILE
GROUP 1 (
'D:\oracle\orcl\data\REDO01_a.LOG',
'D:\oracle\orcl\data\REDO01_b.LOG'
) SIZE 20M,
GROUP 2 (
'D:\oracle\orcl\data\REDO02_a.LOG',
'D:\oracle\orcl\data\REDO02_b.LOG'
) SIZE 20M,
GROUP 3 (
'D:\oracle\orcl\data\REDO03_A.LOG',
'D:\oracle\orcl\data\REDO03_B.LOG'
) SIZE 20M
-- STANDBY LOGFILE
DATAFILE
'D:\ORACLE\ORCL\DATA\SYSTEM01.DBF',
'D:\ORACLE\ORCL\DATA\UNDOTBS01.DBF',
'D:\ORACLE\ORCL\DATA\DRSYS01.DBF',
'D:\ORACLE\ORCL\DATA\EXAMPLE01.DBF',
'D:\ORACLE\ORCL\DATA\INDX01.DBF',
'D:\ORACLE\ORCL\DATA\ODM01.DBF',
'D:\ORACLE\ORCL\DATA\TOOLS01.DBF',
'D:\ORACLE\ORCL\DATA\USERS01.DBF',
'D:\ORACLE\ORCL\DATA\XDB01.DBF',
'D:\ORACLE\ORCL\DATA\USED_TEST01.DBF',
'D:\ORACLE\ORCL\DATA\PERFSTAT.DBA',
'D:\ORACLE\ORCL\DATA\TST01.DBF',
'D:\ORACLE\ORCL\DATA\SYSTEM02.DBF',
'D:\ORACLE\ORCL\DATA\ABC.DBF',
'D:\ORACLE\ORCL\DATA\O1_MF_TBS_4323P200_.DBF',
'D:\ORACLE\ORCL\DATA\TST_8K_01.DBF',
'D:\ORACLE\ORCL\DATA\TOOLS02.DBF',
'D:\ORACLE\ORCL\DATA\USED_TEST02.DBF',
'D:\ORACLE\ORCL\DATA\TFDS_DATA01.DBF',
'D:\ORACLE\ORCL\DATA\DATA4_1_01.DBF',
'D:\ORACLE\ORCL\DATA\TFDS_DATA03.DBF',
'D:\ORACLE\ORCL\DATA\TFDS_DATA02.DBF',
'D:\ORACLE\ORCL\DATA\TT_01_01_.DBF'
CHARACTER SET AL32UTF8
;
解决!
9、打开数据库
SQL> alter database mount;
alter database mount
*
ERROR 位于第 1 行:
ORA-01100: ??????
SQL> shutdown immediate;
ORA-01109: ??????
已经卸载数据库。
ORACLE 例程已经关闭。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 337189908 bytes
Fixed Size 453652 bytes
Variable Size 125829120 bytes
Database Buffers 209715200 bytes
Redo Buffers 1191936 bytes
数据库装载完毕。
ORA-01589: 要打开数据库则必须使用 RESETLOGS 或 NORESETLOGS 选项
SQL> alter database open resetlogs;
数据库已更改。
SQL> select instance_name ,status,host_name from v$instance;
INSTANCE_NAME STATUS
-------------------------------- ------------------------
HOST_NAME
--------------------------------------------------------------------------------
orcl OPEN
HOSTNAME
10、检查temp表空间,为temp表空间增加临时文件。
SQL> SELECT A.tablespace_name,A.status FROM DBA_TABLESPACES A WHERE A.contents=
'TEMPORARY';
TABLESPACE_NAME STATUS
------------------------------------------------------------ ------------------
TEMP ONLINE
TEMP2 ONLINE
SQL> SELECT A.FILE#,A.TS# ,A.NAME FROM V$TEMPFILE A;
未选定行
添加临时文件:
SQL> alter tablespace temp add tempfile 'D:\oracle\orcl\data\temp01.dbf' size 1
00m reuse
2 autoextend on next 640k maxsize 200m;
表空间已更改。
SQL> SELECT A.FILE#,A.TS# ,A.NAME FROM V$TEMPFILE A;
FILE# TS#
---------- ----------
NAME
--------------------------------------------------------------------------------
1 2
D:\ORACLE\ORCL\DATA\TEMP01.DBF
结果: 成功,完成!
几个脚本:
BACKUP:
run {
backup full database include current controlfile;
backup archivelog from time 'sysdate-3' format 'D:\oracle\bak\arc_%U.bak' ;
copy current controlfile to 'D:\oracle\bak\control_bak.ctl';
}
用RMAN做全库恢复:
RUN{
STARTUP FORCE MOUNT;
SET NEWNAME FOR DATAFILE 1 TO 'D:\oracle\orcl\data\SYSTEM01.DBF';
SET NEWNAME FOR DATAFILE 2 TO 'D:\oracle\orcl\data\UNDOTBS01.DBF';
SET NEWNAME FOR DATAFILE 3 TO 'D:\oracle\orcl\data\DRSYS01.DBF';
SET NEWNAME FOR DATAFILE 5 TO 'D:\oracle\orcl\data\INDX01.DBF';
SET NEWNAME FOR DATAFILE 13 TO 'D:\oracle\orcl\data\SYSTEM02.DBF';
SET NEWNAME FOR DATAFILE 14 TO 'D:\oracle\orcl\data\ABC.DBF';
SET NEWNAME FOR DATAFILE 20 TO 'D:\oracle\orcl\data\DATA4_1_01.DBF';
SET NEWNAME FOR DATAFILE 4 TO 'D:\oracle\orcl\data\EXAMPLE01.DBF ';
SET NEWNAME FOR DATAFILE 7 TO 'D:\oracle\orcl\data\TOOLS01.DBF ';
SET NEWNAME FOR DATAFILE 11 TO 'D:\oracle\orcl\data\PERFSTAT.DBA ';
SET NEWNAME FOR DATAFILE 15 TO 'D:\oracle\orcl\data\O1_MF_TBS_4323P200_.DBF';
SET NEWNAME FOR DATAFILE 18 TO 'D:\oracle\orcl\data\USED_TEST02.DBF ';
SET NEWNAME FOR DATAFILE 21 TO 'D:\oracle\orcl\data\TFDS_DATA03.DBF ';
SET NEWNAME FOR DATAFILE 23 TO 'D:\oracle\orcl\data\TT_01_01_.DBF ';
SET NEWNAME FOR DATAFILE 6 TO 'D:\oracle\orcl\data\ODM01.DBF ';
SET NEWNAME FOR DATAFILE 8 TO 'D:\oracle\orcl\data\USERS01.DBF ';
SET NEWNAME FOR DATAFILE 9 TO 'D:\oracle\orcl\data\XDB01.DBF ';
SET NEWNAME FOR DATAFILE 10 TO 'D:\oracle\orcl\data\USED_TEST01.DBF';
SET NEWNAME FOR DATAFILE 12 TO 'D:\oracle\orcl\data\TST01.DBF ';
SET NEWNAME FOR DATAFILE 17 TO 'D:\oracle\orcl\data\TOOLS02.DBF ';
SET NEWNAME FOR DATAFILE 19 TO 'D:\oracle\orcl\data\TFDS_DATA01.DBF';
SET NEWNAME FOR DATAFILE 22 TO 'D:\oracle\orcl\data\TFDS_DATA02.DBF';
SET NEWNAME FOR DATAFILE 16 TO 'D:\oracle\orcl\data\TST_8K_01.DBF';
RESTORE DATABASE;
SWITCH DATAFILE ALL;
RECOVER DATABASE;
SQL 'ALTER DATABASE OPEN';
}
参考:
http://www.itpub.net/749705,1.html
http://space.itpub.net/756652/viewspace-242396
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/8102208/viewspace-346819/ ,如需转载,请注明出处,否则将追究法律责任。