Linux/Unix shell 脚本清除归档日志文件
作者:网络转载 发布时间:[ 2013/6/6 10:10:35 ] 推荐标签:
对于DEV以及UAT环境,有些时候,数据库需要处于归档模式,但并不需要备份数据库。因此,archive归档日志不停的增长导致磁盘空间被大量耗用。对于这种情形,可以使用一个shell脚本来定时自动清除这些归档日志。本文给出了清除归档日志的脚本。
1、清除归档日志shell脚本
robin@SZDB:~/dba_scripts/custom/bin> more remove_arch_dump.sh
#!/bin/bash
# ------------------------------------------------------------+
# FileName: remove_arch_dump.sh |
# Desc: |
# Remove old archived log and data pump file |
# Usage: |
# ./remove_arch_dump.sh |
# |
# Authror : Robinson |
# Blog :http://blog.csdn.net/robinson_0612 |
# ------------------------------------------------------------+
filename=/etc/oratab
cat $filename | while read LINE
do
case $LINE in
#*) ;; #comment-line in oratab
*)
ORACLE_SID=`echo $LINE | awk -F: '{print $1}' -`
echo $ORACLE_SID
# ---------------------------------
# define archived log directory
# ---------------------------------
dir=/u02/database/$ORACLE_SID/archive/
echo $dir
filelist=`ls -t $dir`
echo $filelist
# ----------------------------------------------------------
# start to remove archived log and keep last 2 archived log
# ----------------------------------------------------------
count=0
for filename in $filelist
do
echo $filename
count=$(($count+1))
if [ $count -gt 2 ]; then
echo $count
rm -vrf $dir$filename
fi
done
ls -tr $dir
# --------------------------------
# define data pump dump directory
# --------------------------------
dir=/u02/database/$ORACLE_SID/BNR/dump/
echo $dir
filelist=`ls -t $dir`
echo $filelist
# ---------------------------------------------------------
# start to remove data pump file and keep last 5 dump file
# ---------------------------------------------------------
count=0
for filename in $filelist
do
echo $filename
count=$(($count+1))
if [ $count -gt 5 ]; then
echo $count
rm -vrf $dir$filename
fi
done
ls -tr $dir
;;
esac
done
exit
2、脚本说明
a、该脚本通过一个外部循环来读取oratab中定义的数据库的SID来寻找对应数据库的归档日志路径以及datapump dump路径。
b、使用了一个for循环来清除归档日志,且保留后的2个归档日志文件。
c、接下来的另一个for循环则用来清除当前SID下对应的dump(Oracle datapump)目录下导出的dump文件。
d、同清除归档日志一样,设定了保留dump目录近的5个文件。保留多少个近的文件(dump的5,或者归档日志2)可以修改。
e、如果不需要清除dump路径,可以将dump部分注释掉。
f、根据需要将其部署到crontab。
相关推荐
更新发布
功能测试和接口测试的区别
2023/3/23 14:23:39如何写好测试用例文档
2023/3/22 16:17:39常用的选择回归测试的方式有哪些?
2022/6/14 16:14:27测试流程中需要重点把关几个过程?
2021/10/18 15:37:44性能测试的七种方法
2021/9/17 15:19:29全链路压测优化思路
2021/9/14 15:42:25性能测试流程浅谈
2021/5/28 17:25:47常见的APP性能测试指标
2021/5/8 17:01:11