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 相关文章推荐
oracle DGMGRL ORA-16603报错的解决方法(DG Broker)
Apr 06 Oracle
ORACLE数据库对long类型字段进行模糊匹配的解决思路
Apr 07 Oracle
zabbix agent2 监控oracle数据库的方法
May 13 Oracle
oracle覆盖导入dmp文件的2种方法
May 21 Oracle
Oracle更换为MySQL遇到的问题及解决
May 21 Oracle
ORACLE数据库应用开发的三十个注意事项
Jun 07 Oracle
Oracle安装TNS_ADMIN环境变量设置参考
Nov 01 Oracle
oracle删除超过N天数据脚本的方法
Feb 28 Oracle
Oracle 多表查询基本语法实例
Apr 18 Oracle
排查并解决Oracle sysaux表空间异常增长
Apr 20 Oracle
oracle数据库去除重复数据
May 20 Oracle
Oracle 11g数据库使用expdp每周进行数据备份并上传到备份服务器
Jun 28 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
php Undefined index的问题
2009/06/01 PHP
php学习之数据类型之间的转换介绍
2011/06/09 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
js+php实现静态页面实时调用用户登陆状态的方法
2015/01/04 PHP
Yii框架连接mongodb数据库的代码
2016/07/27 PHP
HTML5如何适配 iPhone IOS 底部黑条
2021/03/09 HTML / CSS
Prototype 学习 工具函数学习($方法)
2009/07/12 Javascript
JS远程获取网页源代码实例
2013/09/05 Javascript
使用C++为node.js写扩展模块
2015/04/22 Javascript
JS封装cookie操作函数实例(设置、读取、删除)
2015/11/17 Javascript
jQuery实现的简单分页示例
2016/06/01 Javascript
AngularJS使用ng-repeat指令实现下拉框
2016/08/23 Javascript
JS 实现获取验证码 倒计时功能
2018/10/29 Javascript
在vs code 中如何创建一个自己的 Vue 模板代码
2020/11/10 Javascript
vue项目中企业微信使用js-sdk时config和agentConfig配置方式详解
2020/12/15 Vue.js
[57:36]DOTA2-DPC中国联赛 正赛 SAG vs CDEC BO3 第三场 2月1日
2021/03/11 DOTA
Python中关键字is与==的区别简述
2014/07/31 Python
python中__call__内置函数用法实例
2015/06/04 Python
Python的Django框架中设置日期和字段可选的方法
2015/07/17 Python
Python内置函数delattr的具体用法
2017/11/23 Python
酷! 程序员用Python带你玩转冲顶大会
2018/01/17 Python
Python rstrip()方法实例详解
2018/11/11 Python
python简易实现任意位数的水仙花实例
2018/11/13 Python
详解Python logging调用Logger.info方法的处理过程
2019/02/12 Python
python 的topk算法实例
2020/04/02 Python
Python简单实现词云图代码及步骤解析
2020/06/04 Python
pytorch 计算ConvTranspose1d输出特征大小方式
2020/06/23 Python
教育学专业毕业生的自我鉴定
2013/11/26 职场文书
实用求职信范文分享
2013/12/25 职场文书
中专毕业生自我鉴定
2014/02/02 职场文书
报关专员求职信范文
2014/02/22 职场文书
格列夫游记读书笔记
2015/07/01 职场文书
2016年小学党支部创先争优活动总结
2016/04/05 职场文书
OpenCV-Python实现人脸磨皮算法
2021/06/07 Python
baselines示例程序train_cartpole.py的ImportError
2022/05/20 Python
Python OpenGL基本配置方式
2022/05/20 Python