202204 RAC环境归档满

本文介绍了如何在Oracle环境中检查ASM磁盘组使用率,使用RMAN进行归档日志的删除,包括手动切换归档文件及创建定期删除过期归档的脚本。重点在于解决归档问题并确保数据库连接的稳定性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、 检查归档空间使用情况 即查看ASM磁盘组使用率 (任意一个节点)

root(默认root用户登录操作系统)
su - grid
asmcmd
lsdg

2、RMAN方式删除归档 (任意一个节点)

root(默认root用户登录操作系统)
su - oracle
rman target/

#检查控制文件和实际物理文件的差别
crosscheck archivelog all;

#删除过期文件(过期文件:存储在rman资料库中的记录,但实际上记录对应的归档日志已经被清理)
delete noprompt expired archivelog all;

#强制删除1天前的归档
DELETE noprompt force ARCHIVELOG ALL COMPLETED BEFORE ‘SYSDATE-1’;

##今天是这样执行,显示成功的:
crosscheck archivelog all;
delete noprompt expired archivelog all;
delete noprompt archivelog until time 'sysdate-1';
delete noprompt archivelog all completed before 'sysdate-1';

归档删除后,其实还是连不上的。
lsnrctl stop
lsnrctl start
重启一次 监听,才能正常登录

3、手工切换下归档,即人为产生归档文件

root(默认root用户登录操作系统)
su - oracle
sqlplus / as sysdba
alter system switch logfile; (最好两个节点都执行)


4.根本上解决归档问题,我们通过调用脚本来定期删除归档,具体操作:

su - oracle
cd /home/oracle
mkdir delarch
cd delarch
vi delarch.sh

 source /home/oracle/.bash_profile
 rman target / <<EOF
 crosscheck archivelog all;
 delete noprompt force archivelog all completed before 'sysdate-1';
 EOF

chmod 777 delarch.sh
crotab -e

 30 23 **** /home/oracle/delarch/delarch.sh

su --退到root用户
systemctl restart crond --重启调度程序
crontab -l --可以查看调度info

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值