注:本文仅作为参考,实际操作建议咨询DBA。
一、Oracle目录下查找出大文件:
[oracle@test ~]$ cd $ORACLE_BASE
[oracle@test oracle]$ du -sk * |sort -rn
4123184 product
1357224 oradata
9536 flash_recovery_area
4784 diag
620 admin
200 cfgtoollogs
4 checkpoints
根据结果可多次使用du -sk * |sort -rn命令,直到找出大文件的位置
二、出现情况:his1rac1节点下oracle目录不足
三、处理步骤(主要清理两个地方的空间):
a、查看oragrid用户监听日志大小:
路径:
[root@HIS1RAC1 trace]# pwd
/oracle/11.2.0/grid/gridbase/diag/tnslsnr/HIS1RAC1/listener/ trace
[root@HIS1RAC1 trace]# du -sh
7.8G
1、 确认监听是普通监听才可以关闭监听:(因为下面我们要将监听切换到scan监听上)?
LSNRCTL> status
LSNRCTL> show current_listener
Current Listener is LISTENER
2、关闭普通监听日志:
LSNRCTL> set log_status off:
3、切换到scan监听:
LSNRCTL> set current_listener LISTENER_SCAN1
4、确认已经切换到scan监听
LSNRCTL> show current_listener
Current Listener is LISTENER_SCAN1
5、使用oragrid用户登录,先修改监听日志文件名,然后删除监听日志:
6、切换回原来的监听并将监听日志开启即可:
LSNRCTL> show current_listener
Current Listener is LISTENER_SCAN1
LSNRCTL>
LSNRCTL>
LSNRCTL> set current_listener LISTENER
Current Listener is LISTENER
LSNRCTL>
LSNRCTL> set log_status on
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=LISTENER)))
LISTENER parameter "log_status" set to ON
The command completed successfully
b、清理oragrid用户的alert日志:
路径:
[root@HIS1RAC1 alert]# pwd
/oracle/11.2.0/grid/gridbase/diag/tnslsnr/HIS1RAC1/listener/alert
[root@HIS1RAC1 alert]#
操作:使用oracle11g后才有的自带adrci工具清理grid用户的告警日志
[root@HIS1RAC1 ~]# su - oragrid
[HIS1RAC1:oragrid:/home/oragrid]$
[HIS1RAC1:oragrid:/home/oragrid]$
[HIS1RAC1:oragrid:/home/oragrid]$ls
oradiag_oragrid
[HIS1RAC1:oragrid:/home/oragrid]$
[HIS1RAC1:oragrid:/home/oragrid]$
[HIS1RAC1:oragrid:/home/oragrid]$adrci (进入adrci工具)
ADRCI: Release 11.2.0.4.0 - Production on Wed Jun 19 17:40:25 2019
Copyright (c) 1982, 2011, Oracle and/or its affiliates. All rights reserved.
ADR base = "/oracle/11.2.0/grid/gridbase"
adrci> show homes
ADR Homes:
diag/asm/+asm/+ASM1
diag/tnslsnr/HIS1RAC1/listener
adrci>
adrci>
adrci> set homes diag/tnslsnr/HIS1RAC1/listener (切换到oragrid用户的alert目录)
adrci> show homes (确认当前路径)
ADR Homes:
diag/tnslsnr/HIS1RAC1/listener
adrci>
adrci>
adrci> purge -age 43200 -type alert (此处为删除1个月以前的文件,单位是分钟)
adrci>
4、结果:
备注:上述操作过程不需要重启服务器或者数据库。