没有合适的资源?快使用搜索试试~ 我知道了~
(053第7章)Rman recovery.pdf1
需积分: 0 0 下载量 190 浏览量
2022-08-04
15:14:38
上传
评论
收藏 151KB PDF 举报
温馨提示
试读
16页
(053第7章)Rman recovery注意:以下所有恢复和还原前都需要先进行备份!注意:以下所有恢复和还原前都需要先进行备份!1.丢失非关键数据文件丢失非关
资源详情
资源评论
资源推荐
(053第7章)Rman recovery
注意:以下所有恢复和还原前都需要先进行备份!!!注意:以下所有恢复和还原前都需要先进行备份!!!
1.丢失非关键数据文件丢失非关键数据文件
①离线表空间
alter tablespace users offline immediate;
②还原数据文件
restore datafile 4;
③恢复数据文件
recover datafile 4;
④在线表空间
alter tablespace users online;
2.丢失关键数据数据文件丢失关键数据数据文件
①强制关闭数据库
shutdown abort
②启动数据库到mount
startup mount
③还原数据库
restore datafile 1;
④恢复数据库
recover datafile 1;
⑤打开数据库
alter database open;
3.使用使用Image Copy+增量备份方式进行备份和恢复增量备份方式进行备份和恢复
((使用这种方式要求你的备份空间要能存储你数据库中所有数据文件)
①备份
recover copy of database with tag 'daily_inc'; --把增备备份恢复到Image Copy中去
backup incremental level 1 for recover of copy with tag 'daily_inc' database; --生成基
于Image Copy的增量备份
注意: 2条命令每次按顺序执行,这是EM中调度Oracle推荐备份的使用方法。
这种方式综合了Image copy与备份集的优势,效率非常高。
第一次执行:第一条命令什么也不做,第二条命令生成数据库的Image Copy备份。
第二次执行:第一条命令什么也不做,第二条命令生成从上次全库Image Copy以后改
变部分的差异增量备份集。
第三次执行:第一条命令利用第二次执行时生成的增量备份集去去更新最初的Image
Copy,
第二条命令生成继第二次执行之后的又一次差异增量备份集。
后续再次执行,与第三次执行效果相同!
②恢复:在RMAN中将数据文件快速切换到Image Copy的备份文件
sql "alter tablespace users offline";
switch datafile 4 to copy; --这一句无法在run块中执行,将切换原始数据文件到
image copy的文件上
recover datafile 4;
sql "alter tablespace users online";
③恢复:在RMAN中还原数据文件的位置到原始的路径上
(backup as copy datafile 4 format '/u01/app/oracle/oradata/sztech1/users01.dbf' ;
或者 copy datafile 4 to '/u01/app/oracle/oradata/sztech1/users01.dbf';)--如果已存在
image copy可以不需要执行copy备份
sql "alter tablespace users offline";
switch datafile 4 to copy;
recover datafile 4;
sql "alter tablespace users online";
4.使用使用set newname恢复并修改原数据文件的路径恢复并修改原数据文件的路径
RMAN> run {
sql "alter tablespace users offline immediate";
set newname for datafile 4 to '/home/oracle/users01.dbf'; --设置新数据文件
的位置
restore datafile 4;
switch datafile 4; --切换指定的数据文件
recover datafile 4;
sql "alter tablespace users online";
}
--甚至可以改变所有数据文件的位置(在mount下操作),需要有
RMAN> run {
set newname for datafile 1 to '/home/oracle/system01.dbf';
set newname for datafile 2 to '/home/oracle/sysaux.dbf';
set newname for datafile 3 to '/home/oracle/undotbs01.dbf';
set newname for datafile 4 to '/home/oracle/users01.dbf';
restore database;
switch database; --切换所有的数据文件
recover database;
alter database open;
}
5.非归档模式下的数据库恢复非归档模式下的数据库恢复
①关闭数库据
②还原整个数据库,包含数据文件、控制文件
③打开数据库
④手工处理丢失的数据
6.使用还原点执行不完整恢复使用还原点执行不完整恢复
create restore point before_p1;
创建一个到当前状态的还原点。
create restore point end_p1 as of scn 100;
创建一个到过去某个时间的还原点。
注意:执行测试前需要对数据库执行过全库备份!
①基于还原点的恢复
SQL> select count(*) from hr.emp;
COUNT(*)
----------
100
SQL> create restore point rs_emp; --创建一个还原点
Restore point created.
SQL> delete from hr.emp; --删除hr的EMP表所有记录并提交
100 rows deleted.
SQL> commit;
Commit complete.
SQL> select * from v$restore_point; --查询数据库的还原点信息
SCN DATABASE_INCARNATION# GUA STORAGE_SIZE TIME RESTORE_POINT_TIME PRE NAME
---------- --------------------- --- ------------ -------------------- --------------------------------------- ------- ---------
2737951 2 NO 0 03-AUG-17 09.48.13.0 NO RS_EMP
SQL> shutdown immediate --正常关闭数据库
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount; --启动数据到mount
ORACLE instance started.
Total System Global Area 368263168 bytes
Fixed Size 1364704 bytes
Variable Size 322964768 bytes
Database Buffers 37748736 bytes
Redo Buffers 6184960 bytes
Database mounted.
--在RMAN中执行下面的脚本
RMAN> run {
set until restore point rs_emp;
restore database;
recover database;
alter database open resetlogs; --注意:不完整恢复只能以resetlogs方式打开
数据。
}
executing command: SET until clause
Starting restore at 03-AUG-17
......
Finished restore at 03-AUG-17
Starting recover at 03-AUG-17
......
Finished recover at 03-AUG-17
database opened
SQL> select count(*) from hr.emp; --再查询hr的EMP表,恢复到删除数据以
前的状态
COUNT(*)
----------
100
②基于时间点的恢复
SQL> shutdown immediate
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup mount
ORACLE instance started.
Total System Global Area 368263168 bytes
Fixed Size 1364704 bytes
Variable Size 322964768 bytes
Database Buffers 37748736 bytes
Redo Buffers 6184960 bytes
Database mounted.
在RMAN登录的用户环境中设置以下环境变量:
export NLS_DATE_FORMAT='yyyy-mm-dd hh24:mi:ss'
export NLS_LANG=american_america.zhs16gbk
RMAN> run {
剩余15页未读,继续阅读
郑瑜伊
- 粉丝: 19
- 资源: 318
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0