利用sqlplus脚本删除备库归档

一般而言,这种备份或者删除归档的脚本都是通过操作系统上的shell脚本实现,不过如果shell不是很熟,类似的功能完全可以利用sqlplus脚本实现。

 

 

一个9204RACDATA GUARD环境的STANDBY数据库上的例子。

一共需要创建3个文件,此外还有一个在调用脚本过程中生成的文件,第一个文件sql.sh用来执行sqlplus命令,并最终调用生成后的脚本:

sqlplus system/password@primary_db << EOF
@execute.sql
EOF
chmod 755 delete_archivelog.sh
./delete_archivelog.sh

第二个文件execute.sql用来设置输出的格式,并调用最终脚本文件:

set pages 0 lines 100 feedback off ver off echo off trims on trim on show off term off
spo delete_archivelog.sh
@@call.sql
spo off

最后一个文件call.sql利用sql拼出rman删除归档的命令,因为是RAC环境,因此需要对两个THREAD分别进行删除:

select '/u01/oracle/product/9.2.0.4/bin/rman target / << EOF' from dual;
select 'delete noprompt archivelog until sequence ' || (max(sequence#) - 10) || ' thread ' || thread# || ';'
from v$archived_log
where dest_id = 2
and applied = 'YES'
group by thread#;
select 'EOF' from dual;

最后将sql.sh脚本添加到crontab中,使得系统可以定时调用。

 

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/4227/viewspace-697945/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/4227/viewspace-697945/

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值