RAM备份与恢复的实验
操做系统:WINDOWS2003oracle
ORACLE版本:10Gide
ORACLE_SID:XZOAspa
1、 准备工做
C:\>SQLPLUS /NOLOG线程
SQL>CONNECT / AS SYSDBArest
A:XZOA数据库:
一、 建立表空间
SQL>CREATE TABLESPACE exoa
DATAFILE 'C:\oracle\product\
SIZE 20M AUTOEXTEND ON NEXT 20M
MAXSIZE UNLIMITED LOGGING EXTENT MANAGEMENT LOCAL
SEGMENT SPACE MANAGEMENT AUTO;
2、建立用户
SQL>CREATE USER exoa IDENTIFIED BY exoaexoa
DEFAULT TABLESPACE EXOA
TEMPORARY TABLESPACE TEMP
QUOTA UNLIMITED ON EXOA;
3、给用户受权
SQL>GRANT CONNECT,DBA,RESOURCE,EXP_FULL_DATABASE,IMP_FULL_DATABASE
TO exoa WITH ADMIN OPTION;
SQL>GRANT CREATE ANY INDEX,CREATE ANY TABLE,DELETE ANY TABLE,
CREATE SESSION,CREATE TABLE,CREATE VIEW,UNDER ANY TABLE,
UNLIMITED TABLESPACE TO exoa WITH ADMIN OPTION;
B:RMAN (基于CATALOG)
1、建立表空间
SQL>CREATE TABLESPACE space_for_backup
DATAFILE 'C:\oracle\product\
SIZE 50M;
2、建立用户
SQL>CREATE USER rman IDENTIFIED BY rman
TEMPORARY TABLESPACE TEMP
DEFAULT TABLESPACE space_for_backup
QUOTA UNLIMITED ON space_for_backup;
3、给用户受权
SQL>GRANT CONNECT,RESOURCE,RECOVERY_CATALOG_OWNER TO rman;
4、建立恢复资料数
RMAN>connect catalog rman/rman;登陆到恢复资料数据库
RMAN>CREATE CATALOG TABLESPACE space_for_backup;建立恢复资料
5、注册目标数据库
RMAN>connect catalog rman/rman;
RMAN>connect target /;
RMAN>register database;注册目标数据库
RMAN>report schema;查看注册是否成功
2、备份实例
一、 全库备份
RMAN>connect catalog rman/rman;
RMAN>connect target /;
RMAN>backup database format 'c:\backup\db0_%s_%p_%t';
启动 backup 于 18-3月 -11
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=133 devtype=DISK
通道 ORA_DISK_1: 启动所有数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件
fno=00001 name=C:\ORACLE\PRODUCT\
输入数据文件
fno=00003 name=C:\ORACLE\PRODUCT\
输入数据文件
fno=00006 name=C:\ORACLE\PRODUCT\
输入数据文件
fno=00002 name=C:\ORACLE\PRODUCT\
输入数据文件
fno=00005 name=C:\ORACLE\PRODUCT\
输入数据文件
fno=00004 name=C:\ORACLE\PRODUCT\
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\DB0_1_1_746104945 标记=TAG20110318T112225 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:56
通道 ORA_DISK_1: 启动所有数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
在备份集中包含当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\DB0_2_1_746105001 标记=TAG20110318T112225 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:03
完成 backup 于 18-3月 -11
二、 备份表空间
RMAN>connect catalog rman/rman;
RMAN>connect target /;
RMAN> backup tablespace exoa format 'c:\backup\exoa_%s_%p_%t';
启动 backup 于 18-3月 -11
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动所有数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
输入数据文件
fno=00005 name=C:\ORACLE\PRODUCT\
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\EXOA_3_1_746105666 标记=TAG20110318T113425 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:01
完成 backup 于 18-3月 -11
3、备份归档日志
RMAN> backup archivelog all format 'c:\backup\archive_%U';
启动 backup 于 18-3月 -11
当前日志已存档
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 正在启动存档日志备份集
通道 ORA_DISK_1: 正在指定备份集中的存档日志
输入存档日志线程 =1 序列 =3 记录 ID=1 时间戳=746105820
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\ARCHIVE_04M7HAUT_1_1 标记=TAG20110318T113701 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:04
完成 backup 于 18-3月 -11
四、 备份控制文件
RMAN>connect catalog rman/rman;
RMAN>connect target /;
RMAN> backup current controlfile format 'c:\backup\controlfile_%s_%p_%t';
启动 backup 于 18-3月 -11
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动所有数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
备份集中包括当前控制文件
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\CONTROLFILE_6_1_746106132 标记=TAG20110318T114212 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:02
完成 backup 于 18-3月 -11
五、 备份参数文件SPFILE
RMAN>connect catalog rman/rman;
RMAN>connect target /;
RMAN> backup spfile format 'c:\backup\spfile_%s_%p_%t';
启动 backup 于 18-3月 -11
使用通道 ORA_DISK_1
通道 ORA_DISK_1: 启动所有数据文件备份集
通道 ORA_DISK_1: 正在指定备份集中的数据文件
在备份集中包含当前的 SPFILE
通道 ORA_DISK_1: 正在启动段 1 于 18-3月 -11
通道 ORA_DISK_1: 已完成段 1 于 18-3月 -11
段句柄=C:\BACKUP\SPFILE_7_1_746106297 标记=TAG20110318T114457 注释=NONE
通道 ORA_DISK_1: 备份集已完成, 通过时间:00:00:02
完成 backup 于 18-3月 -11
3、恢复实例
1、恢复数据库(能够将数据库文件所有删除,模拟数据库损坏现象)
SQL> connect / as sysdba;
已链接到空闲例程。
SQL> startup mount;
ORACLE 例程已经启动。
Total System Global Area 293601280 bytes
Fixed Size 1248624 bytes
Variable Size 100663952 bytes
Database Buffers 188743680 bytes
Redo Buffers 2945024 bytes
数据库装载完毕。
RMAN> connect catalog rman/rman;
RMAN> connect target /;
已链接到目标数据库: XZOA (DBID=2811854429, 未打开)
RMAN> restore database;还原数据库
启动 restore 于 18-3月 -11
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=155 devtype=DISK
正在略过数据文件 6; 已恢复到文件
C:\ORACLE\PRODUCT\
SPACE_FOR_BACKUP.DBF
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00001恢复到
C:\ORACLE\PRODUCT\
EM_6R3O30JM_.DBF
正将数据文件00002恢复到
C:\ORACLE\PRODUCT\
TBS1_6R3O30RW_.DBF
正将数据文件00003恢复到
C:\ORACLE\PRODUCT\
UX_6R3O30M1_.DBF
正将数据文件00004恢复到
C:\ORACLE\PRODUCT\
S_6R3O30TV_.DBF
通道 ORA_DISK_1: 正在读取备份段 C:\BACKUP\DB0_1_1_746104945
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = C:\BACKUP\DB0_1_1_746104945 标记 = TAG20110318T112225
通道 ORA_DISK_1: 恢复完成, 用时: 00:02:05
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00005恢复到
C:\ORACLE\PRODUCT\
通道 ORA_DISK_1: 正在读取备份段 C:\BACKUP\EXOA_3_1_746105666
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = C:\BACKUP\EXOA_3_1_746105666 标记 = TAG20110318T113425
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01
完成 restore 于 18-3月 -11
RMAN> recover database;恢复数据库
启动 recover 于 18-3月 -11
使用通道 ORA_DISK_1
正在开始介质的恢复
介质恢复完成, 用时: 00:00:03
完成 recover 于 18-3月 -11
SQL> alter database open;
数据库已更改。
2、恢复表空间(能够将表空间文件文件删除,模拟表空间损坏现象)
SQL> connect / as sysdba
已链接到空闲例程。
SQL> startup
ORACLE 例程已经启动。
Total System Global Area 293601280 bytes
Fixed Size 1248624 bytes
Variable Size 104858256 bytes
Database Buffers 184549376 bytes
Redo Buffers 2945024 bytes
数据库装载完毕。
ORA-01157: 没法标识/锁定数据文件 5 - 请参阅 DBWR 跟踪文件
ORA-01110: 数据文件 5:
'C:\ORACLE\PRODUCT\
RMAN> connect catalog rman/rman;
RMAN> connect target /;
已链接到目标数据库: XZOA (DBID=2811854429, 未打开)
RMAN> run
2> {
3> restore tablespace exoa;
4> switch datafile all;
5> recover tablespace exoa;
6> }
启动 restore 于 18-3月 -11
使用目标数据库控制文件替代恢复目录
分配的通道: ORA_DISK_1
通道 ORA_DISK_1: sid=155 devtype=DISK
通道 ORA_DISK_1: 正在开始恢复数据文件备份集
通道 ORA_DISK_1: 正在指定从备份集恢复的数据文件
正将数据文件00005恢复到
C:\ORACLE\PRODUCT\
通道 ORA_DISK_1: 正在读取备份段 C:\BACKUP\EXOA_3_1_746105666
通道 ORA_DISK_1: 已恢复备份段 1
段句柄 = C:\BACKUP\EXOA_3_1_746105666 标记 = TAG20110318T113425
通道 ORA_DISK_1: 恢复完成, 用时: 00:00:01
完成 restore 于 18-3月 -11
启动 recover 于 18-3月 -11
使用通道 ORA_DISK_1
正在开始介质的恢复
介质恢复完成, 用时: 00:00:01
完成 recover 于 18-3月 -11
SQL> alter tablespace exoa online;
alter tablespace exoa online
*
第 1 行出现错误:
ORA-01109: 数据库未打开
SQL> alter database open;
数据库已更改。
SQL> alter tablespace exoa online;
表空间已更改。