oracle 备份恢复篇(二)---rman 增备恢复--不完全恢复
2024-08-28 17:13:28
一,环境准备
全备脚本:
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01
export ORACLE_SID=prod
export ORACLE_HOME=/u01/oracle/db_1
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export LANG=en_US
rman target / log /u01/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
backup database filesperset format '/u01/backup/full_%d_%T_%s_%p';
sql 'alter system archive log current';
sql 'alter system archive log current';
sql 'alter system archive log current';
backup archivelog all format '/u01/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/u01/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt obsolete;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF
增备脚本:
export TMP=/tmp
export TMPDIR=$TMP
export ORACLE_BASE=/u01
export ORACLE_SID=prod
export ORACLE_HOME=/u01/oracle/db_1
export ORACLE_TERM=xterm
export PATH=$PATH:$ORACLE_HOME/bin:$HOME/bin
export LANG=en_US
rman target / log /u01/backup/rman_full.log append<<EOF
run
{allocate channel c1 type disk;
allocate channel c2 type disk;
sql 'alter system archive log current';
sql 'alter system archive log current';
sql 'alter system archive log current';
backup archivelog all format '/u01/backup/arch_%d_%T_%s_%p' delete input;
backup current controlfile format '/u01/backup/ctl_%d_%T_%s_%p';
crosscheck backup;
crosscheck archivelog all;
delete noprompt expired backup;
delete noprompt expired archivelog all;
}
EOF
实际环境..周日全备,其他增备
周日全备数据:
运行全备脚本.........
周一增备:
这天的数据写入特别多........
create table test as select * from tab; create table a as select * from dba_users; create table scott.emp1 as select * from scott.emp where rownum < ; select * from scott.emp1;
.....未完待续
不停的写.....写......写..... 晚上增备了 sh 增备脚本.sh
数据故障模拟:
又一次删除:
二,故障发现于处理
第一步: 首先准备
进入数据库....
关闭数据库:>>>> shutdown abort
启动到nomount状态
进入备份目录查看最新的备份
进入rman >>> rman target /
第二步: 恢复控制文件,启动到数据库mount状态
restore controlfile from '/u01/backup/ctl_PROD_20190301_724_1';
第三步:
找到最新的归档集并注册
RMAN> list backup;
...... RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_719_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_721_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_722_1';
RMAN> catalog backuppiece '/u01/backup/arch_PROD_20190301_723_1';
第四步:
恢复数据
第五步:
恢复归档数据
RMAN> recover database;
第六步:
打开数据库到resetlogs模式(重置redo)
RMAN> alter database open resetlogs;
第七步:
重新备份数据
最新文章
- 象写程序一样写博客:搭建基于github的博客
- 关于prototype
- IOS之分析网易新闻存储数据(CoreData的使用,增删改查)
- Use OWIN to Self-Host ASP.NET Web API 2
- getline函数
- 常量指针(const X*)和指针常量(X* const)
- 使用line-height来垂直居中在安卓设备并不居中,利用ji调整
- TCP网络编程-----客户端请求连接服务器、向服务器发数据、从服务器接收数据、关闭连接
- C# 今天时间 今天结束时间
- Linux内核分析--理解进程调度时机、跟踪分析进程调度和进程切换的过程
- 基础回顾之List集合
- jquery+jquery.pagination+php+ajax 无刷新分页
- Spring @Transactional注解不回滚不起作用无效
- 【转载】@RequestMapping的分类
- Android 自定义组件之 带有悬浮header的listview
- 【转】OSI详解
- Ubuntu18.04创建新的系统用户
- Java 反射调用的一种优化
- Spring初学之通过工厂方法配置Bean
- 单点登录cas常见问题(四) - ticket有哪些存储方式?