oracle自动清理archivelog文件的具体技巧
发布时间:2021-11-28 19:47:46 所属栏目:教程 来源:互联网
导读:1.登陆到服务器上创建rman自动删除两天前的归档日志脚本 [oracle@108 ~]$ cat del_ora_log.rman EOF crosscheck archivelog all; delete noprompt expired archivelog all; delete noprompt force archivelog until time sysdate -2; -------删除两天前的arch
1.登陆到服务器上创建rman自动删除两天前的归档日志脚本 [oracle@108 ~]$ cat >>del_ora_log.rman <<EOF crosscheck archivelog all; delete noprompt expired archivelog all; delete noprompt force archivelog until time 'sysdate -2'; -------删除两天前的archivelog exit; EOF 2.手动执行清除日志 [oracle@108 ~]$ rman target/ cmdfile=/home/oracle/del_ora_log.rman msglog=/home/oracle/del_ora_log.rman.log 3.将脚本加入系统定时任务 注意:任务执行的时候环境变量不能应用上,导致rman命令不能执行成功,可以将环境变量和命令放到一个脚本中,这样执行就没有问题。 Shell代码 PATH=$PATH:$HOME/bin export PATH export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=ORCL export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib:/usr/local/lib rman target/ cmdfile=/home/oracle/del_ora_log.rman msglog=/home/oracle/del_ora_log.rman.log >>/home/oracle/rman.log 2>&1 [oracle@108 ~]$ crontab -e 13 * * * * /home/oracle/del_ora_log.sh >>del_ora_log.log 2>&1 4.某些表插入数据频繁但数据又不太重要可以去掉log。 alter table <tablename> NOLOGGING; (编辑:济南站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |