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 ...
随机推荐
- 如何从 ASH 找到消耗 PGA 和 临时表空间 较多的 Top SQL_ID (Doc ID 2610646.1)
如何从 ASH 找到消耗 PGA 和 临时表空间 较多的 Top SQL_ID (Doc ID 2610646.1) 适用于: Oracle Database - Enterprise Edition ...
- 08-Node.js学习笔记-静态资源访问
静态资源 服务器端不需要处理,可以直接响应给客户端的资源就是静态资源,例如css,javaScript,image文件 动态资源 相同的请求地址不同的响应资源,这种资源就是动态资源 http://ww ...
- 09. Go 语言并发
Go 语言并发 并发指在同一时间内可以执行多个任务.并发编程含义比较广泛,包含多线程编程.多进程编程及分布式程序等.本章讲解的并发含义属于多线程编程. Go 语言通过编译器运行时(runtime),从 ...
- 第1章 你好,C++并发世界
#include<iostream> #include<thread> void print(){ std::cout << "hello world&q ...
- [译]Vulkan教程(06)验证层
[译]Vulkan教程(06)验证层 What are validation layers? 什么是验证层? The Vulkan API is designed around the idea of ...
- java之方法的重载(overload)
什么是重载? 在任何一个类中,允许存在一个以上的同名的方法,只要它们的参数个数或者参数类型不同即可: 重载的特点? 与返回值无关,只看参数列表.且参数列表必须不同(参数个数或参数类型).调用时,根据方 ...
- 在Python中使用MySQL--PyMySQL的基本使用
PyMySQL的使用 安装 sudo pip3 install pymysql 基本使用 from pymysql import connect # 1.创建链接 coon = connect() & ...
- java超市购物管理系统
一.概述 1.鹏哥前面有写过java项目超市管理系统项目,传送门 2.收到很多朋友私信给我,也很感谢老铁们的反馈和交流,前面这个项目只是对java基础知识和面向对象的思想练习,但是没有涉及到java如 ...
- IdentityServer4 常见问题 - 用户拒绝授权后报错
1.问题说明 在 IdentityServer4 Web 授权中,一般会有一个显示客户端需要获取用户的那些信息的页面,询问用户是否同意: 在这个页面如果我们点击"No, Do Not All ...
- [错误]Caused by: org.apache.spark.memory.SparkOutOfMemoryError: Unable to acquire 65536 bytes of memory, got 0
今天,在运行Spark SQL代码的时候,遇到了以下错误: Caused by: org.apache.spark.SparkException: Job aborted due to stage f ...