首页 > 数据库 > Oracle > [20210623]完善清除aud脚本.txt
[20210623]完善清除aud脚本.txt
--//发现自己写的清除aud脚本通用性不好,每次都要修改,写一个通用脚本.而且一些服务器有多个实例的情况.
--//编写脚本如下:
# cat /usr/local/bin/purge_oracle_aud.sh
#! /bin/bash
# purge oracle audit log
odebug=${ODEBUG:-0}
if (( $# < 1 ))
then
echo "arguments is insufficiency , argumentN = oracle_sid N>=1"
exit 1
fi
for i in "$@"
do
if [ -d /u01/app/oracle/admin/${i}/adump/ ]
then
echo
echo "start purge oracle audit ${i} at : " $(/bin/date +'%Y/%m/%d %T')
/usr/bin/find /u01/app/oracle/admin/${i}/adump/ -mtime +30 -name "${i}_ora_*.aud" -print -delete
echo "end purge oracle audit ${i} at : " $(/bin/date +'%Y/%m/%d %T')
echo
else
echo "/u01/app/oracle/admin/${i}/adump/ directory is not exist"
exit 2
fi
done
# chmod 700 /usr/local/bin/purge_oracle_aud.sh
--//还是通用性不好,没有利用环境变量$ORACLE_BASE,先暂时这样没时间.
2.加入crontab脚本:
# cat /etc/cron.d/ntp
34 6 * * * root /usr/local/bin/purge_oracle_aud.sh dbcndg2 >> /var/log/purge_oracle_aud.log 2>&1
--//每天6:34分执行.
3.修改/etc/logrotate.d/oracle,加入如下:
# grep -v "^#" /etc/logrotate.d/oracle
/var/log/purge_oracle_aud.log
{
size=20M
rotate 5
copytruncate
compress
notifempty
missingok
}
--//定期清除/var/log/purge_oracle_aud.log内容,另外我感觉使用链接http://blog.itpub.net/267265/viewspace-2666133/方式管理
--//audit更加合理一些.
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/267265/viewspace-2778110/ ,如需转载,请注明出处,否则将追究法律责任。