Oracle删除归档日志及添加定时任务


Posted in Oracle onJune 28, 2022

一、删除归档日志

1.切换用户

# 切换至oracle用户
su – oracle

2.使用RMAN工具

# 使用RMAN工具,删除失效的归档日志
rman

注:RMAN(Recovery Manager)是一种用于备份(backup)、还原(restore)和恢复(recover)数据库的 Oracle 工具。

3.连接本地数据库

# 使用target命令连接本地数据库
RMAN> connect target /

4.检查控制文件和实际物理文件的差别

执行crosscheck命令,检查控制文件和实际物理文件的差别,如果物理文件不存在于介质上,将标记为expired(失效/不可用),crosscheck之后,就可以删除这些失效的归档日志了(执行脚本后,删除的归档日志状态会变为“失效”)

RMAN> crosscheck archivelog all;

5.同步检查控制文件和实际物理文件的信息

# 删除状态为expired(失效/不可用)的归档日志
RMAN> delete expired archivelog all;

6.删除n天前的归档日志

# 删除 3 天前的归档日志:
RMAN> delete archivelog all completed before 'sysdate-3';
# 删除 1 天前
RMAN> delete archivelog until time 'sysdate-1'

区别:第一条带complete的语句,主要是删除已备份过的归档,没有备份的归档,不会被删除。而第二个语句, 则会删除掉归档,无论备份与否。

7.退出RMAN

# 退出RMAN
RMAN> exit

二、添加定时任务

1.创建归档日志删除脚本

archivelog_clear.sh

#!/bin/bash
BACK_DIR=/home/oracle/clear_archlog/data
export DATE=`date +%F`
mkdir -p $BACK_DIR/$DATE
touch $BACK_DIR/$DATE/rman_backup.log
echo "--------------------------------`date`-------------------------------"
source ~/.bash_profile 
# 记录日志rman_backup.log 可以后期检查是否执行成功
rman target / >> $BACK_DIR/$DATE/rman_backup.log <<EOF             
# 把无效的expired的archivelog标出来
crosscheck archivelog all;
# 直接全部删除过期的归档日志
#delete noprompt expired archivelog all;
# 直接删除7天前所有的归档日志
delete noprompt archivelog all completed before 'sysdate-7';
exit
EOF
echo -e "\n"
echo "------------------------------ FINISHED ----------------------------"

2.授予脚本文件执行权限

#授予执行权限
chmod +x archivelog_clear.sh

3.测试归档日志删除脚本

./archivelog_clear.sh

4.添加定时任务

输入命令:crontab -e 编辑并且添加一行新的任务

30 3 15 * *   /home/oracle/archivelog_clear.sh

5.查看定时任务

crontab -l

总结

到此这篇关于Oracle删除归档日志及添加定时任务的文章就介绍到这了,更多相关Oracle删除归档日志内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!


Tags in this post...

Oracle 相关文章推荐
zabbix agent2 监控oracle数据库的方法
May 13 Oracle
Oracle11g R2 安装教程完整版
Jun 04 Oracle
ORACLE数据库应用开发的三十个注意事项
Jun 07 Oracle
C#连接ORACLE出现乱码问题的解决方法
Oct 05 Oracle
oracle重置序列从0开始递增1
Feb 28 Oracle
Oracle中DBLink的详细介绍
Apr 29 Oracle
解决Oracle数据库用户密码过期
May 11 Oracle
Oracle数据库事务的开启与结束详解
Jun 25 Oracle
Oracle中日期的使用方法实例
Jul 07 Oracle
oracle delete误删除表数据后如何恢复
Jun 28 #Oracle
ORACLE中dbms_output.put_line输出问题的解决过程
Jun 28 #Oracle
Oracle 11g数据库使用expdp每周进行数据备份并上传到备份服务器
Jun 28 #Oracle
Oracle数据库事务的开启与结束详解
Jun 25 #Oracle
在Oracle表中进行关键词搜索的过程
Jun 10 #Oracle
Oracle锁表解决方法的详细记录
Jun 05 #Oracle
oracle数据库去除重复数据
May 20 #Oracle
You might like
弄了个检测传输的参数是否为数字的Function
2006/12/06 PHP
ie8 不支持new Date(2012-11-10)问题的解决方法
2013/07/31 Javascript
js截取小数点后几位的写法
2013/11/14 Javascript
jQuery和AngularJS的区别浅析
2015/01/29 Javascript
js如何实现点击标签文字,文字在文本框出现
2015/08/05 Javascript
Angular.js与Bootstrap相结合实现手风琴菜单代码
2016/04/13 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
使用json来定义函数,在里面可以定义多个函数的实现方法
2016/10/28 Javascript
html中鼠标滚轮事件onmousewheel的处理方法
2016/11/11 Javascript
js求数组中全部数字可拼接出的最大整数示例代码
2017/08/25 Javascript
微信小程序实现两个页面传值的方法分析
2018/12/11 Javascript
JS如何实现网站中PC端和手机端自动识别并跳转对应的代码
2020/01/08 Javascript
vue中axios封装使用的完整教程
2021/03/03 Vue.js
python中循环语句while用法实例
2015/05/16 Python
Django的session中对于用户验证的支持
2015/07/23 Python
Python遍历文件夹和读写文件的实现代码
2016/08/28 Python
python正则分析nginx的访问日志
2017/01/17 Python
linux安装python修改默认python版本方法
2019/03/31 Python
对Pytorch神经网络初始化kaiming分布详解
2019/08/18 Python
pytorch打印网络结构的实例
2019/08/19 Python
Python全局锁中如何合理运用多线程(多进程)
2019/11/06 Python
PyTorch的SoftMax交叉熵损失和梯度用法
2020/01/15 Python
Python爬虫库BeautifulSoup获取对象(标签)名,属性,内容,注释
2020/01/25 Python
基于django2.2连oracle11g解决版本冲突的问题
2020/07/02 Python
一款纯css3实现的非常实用的鼠标悬停特效演示
2014/11/05 HTML / CSS
HTML5制作表格样式
2016/11/15 HTML / CSS
为什么要用EJB
2014/04/17 面试题
初一英语教学反思
2014/01/11 职场文书
出纳员岗位职责
2014/03/13 职场文书
教师节学生演讲稿
2014/09/03 职场文书
研究生导师评语
2014/12/31 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
设备技术员岗位职责
2015/04/11 职场文书
金榜题名主持词
2015/07/02 职场文书
2015年社区重阳节活动总结
2015/07/30 职场文书
Python接口自动化之文件上传/下载接口详解
2022/04/05 Python