Oracle目錄由於TFA觸發bug導致jdb檔案未自動清理引起空間不足

始於腳下發表於2021-01-21

資料庫目錄空間使用問題的坑,又踩一個,今天這個比較特殊,客戶反饋在網上各種搜,都搜不到。。。Oracle資料庫這麼多年的技術積累,居然還有網上搜不到的技術,確實難得。

今天這個案例是客戶的一個12c的叢集環境,由於TFA的jdb檔案無限積累造成大量空間被佔用,導致資料庫目錄使用率比較高。

[root@orcl2 database]# du -sh *
25.1G   BERKELEY_JE_DB
[root@orcl2 database]# pwd
/u01/app/grid/tfa/orcl2/database/
[root@ orcl2 database]# cd ./BERKELEY_JE_DB/
[root@ orcl2 BERKELEY_JE_DB]# 
[root@ orcl2 BERKELEY_JE_DB]# ll
… …
-rw-r--r-- 1 root root  9999986 12月 29 14:53 00001fbb.jdb
-rw-r--r-- 1 root root  9999987 1月   4 11:26 00001fbd.jdb
-rw-r--r-- 1 root root  9999971 1月  12 15:18 00001fc0.jdb
-rw-r--r-- 1 root root  9999995 1月  13 10:59 00001fc1.jdb
-rw-r--r-- 1 root root  9999976 1月  16 23:05 00001fc2.jdb
-rw-r--r-- 1 root root  9999983 1月  18 00:31 00001fc3.jdb
-rw-r--r-- 1 root root   899218 1月  18 10:42 00001fc4.jdb


可以看到tfa的BERKELEY_JE_DB目錄佔用了25G的磁碟空間,累積了大量的000開頭.jdb結尾的檔案。一般情況下,tfa對該目錄下的jdb檔案是自動維護的,不會引起持續的積累引起檔案目錄堆積佔用過多的空間,既然出現了問題,直接處理就行了。Tfa只是Oracle日子採集分析的一個小工具,不影響資料庫及叢集的整體執行,直接通過tfactl停止tfa服務,然後刪除檔案,再起tfa服務即可(若是刪了tfa起不來,大不了重新配置一下tfa)。思路有了,以下就是處理過程。

[grid@orcl2 ~]$ tfactl stop
Access Denied: Only TFA Admin can run this command
[grid@orcl2 ~]$
[grid@orcl2 ~]$ exit
logout
[root@orcl2 database]# cd /u01/app/12.1.0/grid/bin/
[root@orcl2 bin]# ./tfactl stop
Stopping TFA
TFA is running  - Will wait 5 seconds (up to 3 times)  
TFA is running  - Will wait 5 seconds (up to 3 times)  
TFA is running  - Will wait 5 seconds (up to 3 times)  
TFAmain Force Stopped Successfully
. . . 
Successfully stopped TFA..
[root@orcl2 bin]#
[root@orcl2 bin]# cd /u01/app/grid/tfa/orcl2/database/BERKELEY_JE_DB
[root@orcl2 BERKELEY_JE_DB]# rm -f ./00000*.jdb
[root@orcl2 BERKELEY_JE_DB]# cd /u01/app/12.1.0/grid/bin/
[root@orcl2 bin]# ./tfactl start
Starting TFA..
start: Job is already running: oracle-tfa
Waiting up to 100 seconds for TFA to be started..
. . . . . 
. . . . . 
. . . . . 
Successfully started TFA Process..
. . . . . 
TFA Started and listening for commands
[root@orcl2 bin]# 
[root@orcl2 bin]# cd /u01/app/grid/tfa/orcl2/database
[root@orcl2 database]# du -sh *
9.9M     BERKELEY_JE_DB
[root@orcl2 database]#


可以看到,結果很理想,不僅空間清理了,tfa服務也起來了,皆大歡喜。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31403259/viewspace-2751584/,如需轉載,請註明出處,否則將追究法律責任。

相關文章