注:本文僅作為參考,實際操作建議咨詢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、結果:
備注:上述操作過程不需要重啟服務器或者數據庫。