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设置DB、监听和EM开机启动的方法
Apr 25 Oracle
mybatis使用oracle进行添加数据的方法
Apr 27 Oracle
Oracle11g r2 卸载干净重装的详细教程(亲测有效已重装过)
Jun 04 Oracle
ORACLE查看当前账号的相关信息
Jun 18 Oracle
SQL模糊查询报:ORA-00909:参数个数无效问题的解决
Jun 21 Oracle
Oracle以逗号分隔的字符串拆分为多行数据实例详解
Jul 16 Oracle
Oracle 临时表空间SQL语句的实现
Sep 25 Oracle
oracle数据库去除重复数据
May 20 Oracle
Oracle 11g数据库使用expdp每周进行数据备份并上传到备份服务器
Jun 28 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
用php+javascript实现二级级联菜单的制作
2008/05/06 PHP
php购物网站支付paypal使用方法
2010/11/28 PHP
CI框架源码阅读,系统常量文件constants.php的配置
2013/02/28 PHP
PHP实现上传多图即时显示与即时删除的方法
2017/05/09 PHP
php更新cookie内容的详细方法
2019/09/30 PHP
PHP For循环字母A-Z当超过26个字母时输出AA,AB,AC
2020/02/16 PHP
jQuery LigerUI 使用教程表格篇(1)
2012/01/18 Javascript
js 有框架页面跳转(target)三种情况下的应用
2013/04/09 Javascript
关于JavaScript与HTML的交互事件
2013/04/12 Javascript
JavaScript使用shift方法移除素组第一个元素实例分析
2015/04/06 Javascript
jQuery实现信息提示框(带有圆角框与动画)效果
2015/08/07 Javascript
微信小程序 video组件详解
2016/10/25 Javascript
jQuery的Read()方法代替原生JS详解
2016/11/08 Javascript
详解VUE 定义全局变量的几种实现方式
2017/06/01 Javascript
详解node-ccap模块生成captcha验证码
2017/07/01 Javascript
vue表单绑定实现多选框和下拉列表的实例
2017/08/12 Javascript
用Webpack构建Vue项目的实践
2017/11/07 Javascript
微信小程序之批量上传并压缩图片的实例代码
2018/07/05 Javascript
解决angularjs前后端分离调用接口传递中文时中文乱码的问题
2018/08/13 Javascript
layui树形菜单动态遍历的例子
2019/09/23 Javascript
[01:05:24]Ti4 冒泡赛第二天 iG vs NEWBEE 3
2014/07/15 DOTA
Python中的条件判断语句与循环语句用法小结
2016/03/21 Python
fastcgi文件读取漏洞之python扫描脚本
2017/04/23 Python
Python3 socket同步通信简单示例
2017/06/07 Python
Django项目中使用JWT的实现代码
2019/11/04 Python
利用django model save方法对未更改的字段依然进行了保存
2020/03/28 Python
TensorFlow保存TensorBoard图像操作
2020/06/23 Python
草莓网化妆品日本站:Strawberrynet日本
2017/10/20 全球购物
幼儿园大班教学反思
2014/02/10 职场文书
金融管理应届生求职信
2014/02/20 职场文书
外语系毕业生求职自荐信
2014/04/12 职场文书
会计个人实习计划书
2014/08/15 职场文书
公司承诺书格式范文
2015/04/28 职场文书
2015大学生暑期实习报告
2015/07/13 职场文书
CSS3 菱形拼图实现只旋转div 背景图片不旋转功能
2021/03/30 HTML / CSS
postgresql中如何执行sql文件
2023/05/08 PostgreSQL