RMAN详细教程(四):备份脚本实战操作
RMAN详细教程(一):基本命令代码
RMAN详细教程(二):备份、检查、维护、恢复
RMAN详细教程(三):备份脚本的组件和注释
RMAN详细教程(四):备份脚本实战操作
1、为了安全起见,先将数据库完全导出:
exp 用户名/密码@ORACLE file=/backup/ecology_$(date '+%Y%m%d').dmp full=y;
2、因为是数据库操作,所以应切换成Oracle用户:
su - oracle
3、检查数据库是否打开归档模式,如否,则打开SQLPLUS执行以下命令:
archive log list;
alter system set log_archive_dest_n='location=/u01/backupws ';
shutdown immediate;
startup mount;
alter database archivelog;
alter database open;
4、将rman脚本文件放置到backup_sh目录下:
(1)全库备份(一周三次)
rman_ecology_all.sh
run {
allocate channel a1 device type disk format '/backup/ecology_all_%T_%u';
allocate channel a2 device type disk format '/backup/ecology_all_%T_%u';
backup database skip offline plus archivelog delete all input;
backup current controlfile;
release channel a1;
release channel a2;
}
allocate channel for maintenance device type disk;
delete obsolete;
crosscheck backupset;
(2)归档日志备份(一周四次)
rman_ecology_arc.sh
run {
allocate channel b1 device type disk format '/backup/ecology_arc_%T_%u';
allocate channel b2 device type disk format '/backup/ecology_arc_%T_%u';
backup archivelog all;
backup current controlfile;
release channel b1;
release channel b2;
}
allocate channel for maintenance device type disk;
crosscheck backupset;
5、编写RMAN脚本的运行脚本:
mkdir -p /backup/ # 创建目录(-p表示不存在则新建,若存在则忽略)
touch run_rman_ecology_all.sh # 创建all运行脚本
touch run_rman_ecology_arc.sh # 创建arc运行脚本
vi run_rman_ecology_all.sh
export ORACLE_HOME=/u01/app/oracle/product/10.2/db_1
export ORACLE_SID=ecology
/u01/app/oracle/product/10.2/db_1/bin/rman target / log=/backup/all_ecology_$(date +%F).log cmdfile=/backup_sh/rman_ecology_all.sh
vi run_rman_ecology_arc.sh
export ORACLE_HOME=/u01/app/oracle/product/10.2/db_1
export ORACLE_SID=ecology
/u01/app/oracle/product/10.2/db_1/bin/rman target / log=/backup/arc_ecology_$(date +%F).log cmdfile=/backup_sh/rman_ecology_arc.sh
6、添加执行权限:
chmod +x /backup_sh/run_rman_ecology_all.sh
chmod +x /backup_sh/run_rman_ecology_arc.sh
PS:
需使用root用户。
7、手动测试脚本,成功之后再下一步。
若报错,则直接打开/var/spool/mail/登陆用户名,查看日志并改正。
8、添加定时任务:
周三五七晚20:00全库,周一二四六晚20:00归档日志
crontab -e
00 20 * * 0,3,5 sh /backup_sh/run_rman_ecology_all.sh >> /backup/rman_crontab_all.log 2>&1
00 20 * * 1,2,4,6 sh /backup_sh/run_rman_ecology_arc.sh >> /backup/rman_crontab_arc.log 2>&1
格式是“分 时 日 月 周 要执行的命令或脚本”。
9、重启计划任务:
service cron restart
啊!总算完成了~~~
本来只是因为网上Rman的教程不系统化,想自己写一篇造福人类而已。
写着写着发现一篇写不下,太杂乱了ψ(*`ー´)ψ
于是就变成了两篇...然后是三篇....最后扩展成了四篇......
历时一个月,也算完成一个系列笔记了吧(^_−)☆
RMAN详细教程(四):备份脚本实战操作的更多相关文章
- RMAN详细教程(三):备份脚本的组件和注释
RMAN详细教程(一):基本命令代码 RMAN详细教程(二):备份.检查.维护.恢复 RMAN详细教程(三):备份脚本的组件和注释 RMAN详细教程(四):备份脚本实战操作 一.基本组件: 1.Ser ...
- RMAN详细教程(二):备份、检查、维护、恢复
RMAN详细教程(一):基本命令代码 一.创建增量备份 增量备份级别为0-4,但为方便备份管理,oracle建议只限于0级和1级. 1.差异增量备份(differential incremental ...
- RMAN冷备份、一致性备份脚本
RMAN冷备份.一致性备份脚本 run{ shutdown immediate; startup mount; allocate channel c1 type disk; allocate chan ...
- [RouterOS] ROS对接碧海威或PA等流控实现完美流控详细教程(附脚本全免费)
前言: 经常在群里看到不少朋友争论海蜘蛛 ROS 维盟 爱快 碧海威 流控大师 Woyos等等软路由,哪个好.实际上,网络产品是复杂的,现在的软路由功能上已经远远不是单独的路由了.每种产品都有他本身的 ...
- RMAN的实战篇--备份脚本
案列一. 目标: 1.每天夜间1 点执行:2.数据库全备,同时备份控制文件及归档日志文件,备份文件保存至: /backup\目录下,并在完成归档日志文件备份后,自动删除已备份的归档日志:3.备份保留7 ...
- 转载:【Oracle 集群】RAC知识图文详细教程(四)--缓存融合技术和主要后台进程
文章导航 集群概念介绍(一) ORACLE集群概念和原理(二) RAC 工作原理和相关组件(三) 缓存融合技术(四) RAC 特殊问题和实战经验(五) ORACLE 11 G版本2 RAC在LINUX ...
- [译]Godot系列教程四 - 编写脚本
编写脚本(Scripting) 简介 关于无需编程即可创建视频游戏的那些工具的谈论有很多.不用学习编程知识对很多独立开发者来说就是一个梦想.这种需求 - 游戏开发者.甚至在很多公司内部,希望对游戏流程 ...
- SpringMVC框架详细教程(四)_使用maven导入各个版本的Spring依赖包
使用maven导入Spring依赖包 上一节讲了如何向动态Web项目添加下载的Spring依赖包,作为补充下面列出了如何使用 maven 导入Spring的依赖包,可以选择需要的导入(推荐)或者全部导 ...
- Oracle中RMAN基本命令教程
一.target--连接数据库 1.本地: [oracle@oracle ~]$ rman target / 2.远程: [oracle@oracle ~]$ rman target sys/orac ...
随机推荐
- C#数据采集用到的几个方法
这两天在做数据采集,因此整理了下数据采集要用到的一些方法.因为我采集的数据比较简单,所以没有用到框架.比较有名的两个框架 HtmlAgilityPack 和 Jumony,感兴趣的可以研究下.当然,火 ...
- LeetCode刷题191127
数据库: 1179 部门表 Department: +---------------+---------+| Column Name | Type |+---------------+-------- ...
- openstack-neutron安装与配置
一.实验目的: 1.理解neutron服务在OpenStack中的作用 2.掌握在控制节点上安装配置neutron的方法和步骤 3.掌握在计算节点上安装与配置neutron的方法和步骤 二.实验步骤: ...
- go 语言学习图解
- 如何开启php错误日志
nginx与apache不一样,在apache中可以直接指定php的错误日志,那样在php执行中的错误信息就直接输入到php的错误日志中,可以方便查询. 在nginx中事情就变成了这样:nginx只对 ...
- SPARQL入门(二)使用Java操作ARQ
在文章SPARQL入门(一)SPARQL简介与简单使用中,我们了解了RDF.SPARQL以及基于Java编写的SPARQL处理器ARQ.在本文中,笔者将会如何使用Java来操作ARQ. 注意到 ...
- javascript ES6 新特性之 解构
解构的作用是可以快速取得数组或对象当中的元素或属性,而无需使用arr[x]或者obj[key]等传统方式进行赋值 var arr = [1, 2, 3]; //传统方式 var a = arr[0], ...
- 基于SSM的crm管理系统
学完crm后的第一个项目实践,前端样式与标签库都是现成的. 开发环境 eclipse,mysql,jdk1.7 项目架构 整合思路 Dao层: 1.SqlMapConfig.xml,添加别名,但是需要 ...
- C#如何判断委托是实例方法还是静态方法
一. 委托的分类 通过用什么类型的方法来声明为委托,可以分为两类: 1. 委托静态方法:把一个静态方法给委托 2. 委托实例方法:把一个实例对象的成员方法给委托 (这两个名字是博主取的,可能不是很专业 ...
- Java生鲜电商平台-电商起送价的深入思考与实战
Java生鲜电商平台-电商起送价的深入思考与实战 说明:在生鲜电商中,起送价是一个非常普遍的话题,今天我们就用实战来告诉大家,如何设置起送价,如何编写起送价的代码,以及如何同步起送价. 在开始题目之前 ...